From 35e09933763c3586de550baa2521d80512510f5f Mon Sep 17 00:00:00 2001 From: Niraj Yadav Date: Fri, 14 Feb 2025 16:10:43 +0530 Subject: [PATCH] sidecar: Use zap as logger for controller-runtime This commit sets zap as logger for controller runtime and klog. Setting a logger on controller runtime also fixes the error due to logger being unset when creating a new ctrl client in `newCSIAddonsNode`. Signed-off-by: Niraj Yadav --- sidecar/main.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/sidecar/main.go b/sidecar/main.go index 0f0ce89c1..ddef57def 100644 --- a/sidecar/main.go +++ b/sidecar/main.go @@ -31,9 +31,12 @@ import ( sideutil "github.com/csi-addons/kubernetes-csi-addons/sidecar/internal/util" "github.com/kubernetes-csi/csi-lib-utils/leaderelection" + "go.uber.org/zap/zapcore" "k8s.io/client-go/kubernetes" "k8s.io/client-go/rest" "k8s.io/klog/v2" + ctrl "sigs.k8s.io/controller-runtime" + "sigs.k8s.io/controller-runtime/pkg/log/zap" ) func main() { @@ -65,8 +68,17 @@ func main() { klog.Exitf("failed to set logtostderr flag: %v", err) } + opts := zap.Options{ + Development: true, + TimeEncoder: zapcore.ISO8601TimeEncoder, + } + opts.BindFlags(flag.CommandLine) flag.Parse() + logger := zap.New(zap.UseFlagOptions(&opts)) + klog.SetLogger(logger) + ctrl.SetLogger(logger) + if *showVersion { version.PrintVersion() return