mirror of https://github.com/k3s-io/k3s
Fix log spam due to servicelb event recorder namespace conflict
Don't hardcode the event namespace when creating event recorders; some controllers want to create events in other namespaces.
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
(cherry picked from commit 965d0a08ef
)
pull/5612/head
parent
e17ba49641
commit
6a83c1e1b0
|
@ -73,7 +73,7 @@ type watcher struct {
|
|||
|
||||
// start calls listFiles at regular intervals to trigger application of manifests that have changed on disk.
|
||||
func (w *watcher) start(ctx context.Context, client kubernetes.Interface) {
|
||||
w.recorder = pkgutil.BuildControllerEventRecorder(client, ControllerName)
|
||||
w.recorder = pkgutil.BuildControllerEventRecorder(client, ControllerName, metav1.NamespaceSystem)
|
||||
force := true
|
||||
for {
|
||||
if err := w.listFiles(force); err == nil {
|
||||
|
|
|
@ -50,7 +50,7 @@ func Register(
|
|||
controlConfig: controlConfig,
|
||||
nodes: nodes,
|
||||
secrets: secrets,
|
||||
recorder: util.BuildControllerEventRecorder(k8s, controllerAgentName),
|
||||
recorder: util.BuildControllerEventRecorder(k8s, controllerAgentName, metav1.NamespaceDefault),
|
||||
}
|
||||
|
||||
nodes.OnChange(ctx, "reencrypt-controller", h.onChangeNode)
|
||||
|
|
|
@ -69,7 +69,7 @@ func Register(ctx context.Context,
|
|||
services: kubernetes.CoreV1(),
|
||||
daemonsets: kubernetes.AppsV1(),
|
||||
deployments: kubernetes.AppsV1(),
|
||||
recorder: util.BuildControllerEventRecorder(kubernetes, ControllerName),
|
||||
recorder: util.BuildControllerEventRecorder(kubernetes, ControllerName, meta.NamespaceAll),
|
||||
}
|
||||
|
||||
services.OnChange(ctx, ControllerName, h.onChangeService)
|
||||
|
|
|
@ -14,7 +14,6 @@ import (
|
|||
"github.com/rancher/wrangler/pkg/schemes"
|
||||
"github.com/sirupsen/logrus"
|
||||
v1 "k8s.io/api/core/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/util/wait"
|
||||
clientset "k8s.io/client-go/kubernetes"
|
||||
coregetter "k8s.io/client-go/kubernetes/typed/core/v1"
|
||||
|
@ -78,11 +77,11 @@ func WaitForAPIServerReady(ctx context.Context, client clientset.Interface, time
|
|||
return nil
|
||||
}
|
||||
|
||||
func BuildControllerEventRecorder(k8s clientset.Interface, controllerName string) record.EventRecorder {
|
||||
func BuildControllerEventRecorder(k8s clientset.Interface, controllerName, namespace string) record.EventRecorder {
|
||||
logrus.Infof("Creating %s event broadcaster", controllerName)
|
||||
eventBroadcaster := record.NewBroadcaster()
|
||||
eventBroadcaster.StartLogging(logrus.Infof)
|
||||
eventBroadcaster.StartRecordingToSink(&coregetter.EventSinkImpl{Interface: k8s.CoreV1().Events(metav1.NamespaceSystem)})
|
||||
eventBroadcaster.StartRecordingToSink(&coregetter.EventSinkImpl{Interface: k8s.CoreV1().Events(namespace)})
|
||||
nodeName := os.Getenv("NODE_NAME")
|
||||
return eventBroadcaster.NewRecorder(schemes.All, v1.EventSource{Component: controllerName, Host: nodeName})
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue