From d7ff9c7e53e9a22420bf960e3c41897bda78d49e Mon Sep 17 00:00:00 2001 From: Icarus9913 Date: Mon, 30 Oct 2023 12:01:52 +0800 Subject: [PATCH] set logger for controller-runtime framework Signed-off-by: Icarus9913 --- cmd/spiderpool-agent/cmd/crd_manager.go | 7 ++++++- cmd/spiderpool-controller/cmd/crd_manager.go | 7 ++++++- go.mod | 7 +++++-- 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/cmd/spiderpool-agent/cmd/crd_manager.go b/cmd/spiderpool-agent/cmd/crd_manager.go index 9891eb6257..2e713ba54d 100644 --- a/cmd/spiderpool-agent/cmd/crd_manager.go +++ b/cmd/spiderpool-agent/cmd/crd_manager.go @@ -6,12 +6,14 @@ package cmd import ( "strconv" + "github.com/go-logr/logr" "k8s.io/apimachinery/pkg/runtime" utilruntime "k8s.io/apimachinery/pkg/util/runtime" clientgoscheme "k8s.io/client-go/kubernetes/scheme" kubevirtv1 "kubevirt.io/api/core/v1" ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/client" + controllerruntimelog "sigs.k8s.io/controller-runtime/pkg/log" metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server" spiderpoolv2beta1 "github.com/spidernet-io/spiderpool/pkg/k8s/apis/spiderpool.spidernet.io/v2beta1" @@ -26,10 +28,13 @@ func init() { } func newCRDManager() (ctrl.Manager, error) { + // set logger for controller-runtime framework + // The controller-runtime would print debug stack if we do not init the log previously: https://github.com/kubernetes-sigs/controller-runtime/pull/2357 + ctrl.SetLogger(logr.New(controllerruntimelog.NullLogSink{})) + config := ctrl.GetConfigOrDie() config.Burst = 100 config.QPS = 50 - mgr, err := ctrl.NewManager(config, ctrl.Options{ Scheme: scheme, Metrics: metricsserver.Options{ diff --git a/cmd/spiderpool-controller/cmd/crd_manager.go b/cmd/spiderpool-controller/cmd/crd_manager.go index 5dac7aee39..51bc286da7 100644 --- a/cmd/spiderpool-controller/cmd/crd_manager.go +++ b/cmd/spiderpool-controller/cmd/crd_manager.go @@ -10,6 +10,7 @@ import ( "path" "strconv" + "github.com/go-logr/logr" multusv1 "github.com/k8snetworkplumbingwg/network-attachment-definition-client/pkg/apis/k8s.cni.cncf.io/v1" calicov1 "github.com/tigera/operator/pkg/apis/crd.projectcalico.org/v1" apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" @@ -19,6 +20,7 @@ import ( kubevirtv1 "kubevirt.io/api/core/v1" ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/client" + controllerruntimelog "sigs.k8s.io/controller-runtime/pkg/log" metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server" runtimeWebhook "sigs.k8s.io/controller-runtime/pkg/webhook" @@ -37,6 +39,10 @@ func init() { } func newCRDManager() (ctrl.Manager, error) { + // set logger for controller-runtime framework + // The controller-runtime would print debug stack if we do not init the log previously: https://github.com/kubernetes-sigs/controller-runtime/pull/2357 + ctrl.SetLogger(logr.New(controllerruntimelog.NullLogSink{})) + port, err := strconv.Atoi(controllerContext.Cfg.WebhookPort) if err != nil { return nil, err @@ -45,7 +51,6 @@ func newCRDManager() (ctrl.Manager, error) { config := ctrl.GetConfigOrDie() config.Burst = 200 config.QPS = 100 - mgr, err := ctrl.NewManager(config, ctrl.Options{ Scheme: scheme, Metrics: metricsserver.Options{ diff --git a/go.mod b/go.mod index 872ae62137..659d6ffd8e 100644 --- a/go.mod +++ b/go.mod @@ -66,6 +66,11 @@ require ( sigs.k8s.io/yaml v1.3.0 ) +require ( + github.com/go-logr/logr v1.2.4 + k8s.io/klog/v2 v2.100.1 // indirect +) + require ( github.com/Masterminds/goutils v1.1.1 // indirect github.com/Masterminds/semver/v3 v3.1.1 // indirect @@ -84,7 +89,6 @@ require ( github.com/fatih/color v1.13.0 // indirect github.com/felixge/httpsnoop v1.0.3 // indirect github.com/fsnotify/fsnotify v1.6.0 // indirect - github.com/go-logr/logr v1.2.4 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/go-ole/go-ole v1.2.6 // indirect github.com/go-openapi/analysis v0.21.4 // indirect @@ -173,7 +177,6 @@ require ( gopkg.in/ini.v1 v1.67.0 // indirect k8s.io/component-base v0.28.1 // indirect k8s.io/gengo v0.0.0-20230306165830-ab3349d207d4 // indirect - k8s.io/klog/v2 v2.100.1 // indirect k8s.io/kube-openapi v0.0.0-20230717233707-2695361300d9 // indirect k8s.io/kubectl v0.26.3 // indirect kubevirt.io/containerized-data-importer-api v1.57.0-alpha1 // indirect