From c07f3ebbde87361854c226c58ae96f8a500ff6fa Mon Sep 17 00:00:00 2001 From: Abhijit Hoskeri Date: Tue, 17 Mar 2026 18:05:20 -0700 Subject: [PATCH] Fix logspam in leaderelection controller. If the reconcileElectionStep function returns `noRequeue, nil`, it causes log spam from apiserver. This is because HandleErrorWithContext regardless of error value. Skip logging if error is nil. Also, tag the log message with the involved lease object name. ``` ... {"ts":1773796037662.8264,"logger":"UnhandledError","caller":"leaderelection/leaderelection_controller.go:169","msg":"Failed to reconcile election step"} {"ts":1773796038472.465,"logger":"UnhandledError","caller":"leaderelection/leaderelection_controller.go:169","msg":"Failed to reconcile election step"} ... ``` --- .../controller/leaderelection/leaderelection_controller.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkg/controlplane/controller/leaderelection/leaderelection_controller.go b/pkg/controlplane/controller/leaderelection/leaderelection_controller.go index db5a99ce60b..1a4ab5a163c 100644 --- a/pkg/controlplane/controller/leaderelection/leaderelection_controller.go +++ b/pkg/controlplane/controller/leaderelection/leaderelection_controller.go @@ -166,7 +166,9 @@ func (c *Controller) processNextElectionItem(ctx context.Context) bool { } intervalForRequeue, err := c.reconcileElectionStep(ctx, key) - utilruntime.HandleErrorWithContext(ctx, err, "Failed to reconcile election step") + if err != nil { // HandleErrorWithContext logs regardless of error value, filter out nil err. + utilruntime.HandleErrorWithContext(ctx, err, "Failed to reconcile election step", "key", key) + } if intervalForRequeue != noRequeue { defer c.queue.AddAfter(key, intervalForRequeue) }