From 5bd0bc8cba4bfc147126c4ea0f90b3f0ba44b01d Mon Sep 17 00:00:00 2001 From: Michael Bridgen Date: Mon, 23 Nov 2020 12:54:15 +0000 Subject: [PATCH] Set logger up with log level and JSON flags This is the GitOps Toolkit convention. This commit also puts the flags in the base deployment config, in the same order as for other GOTK controllers. Signed-off-by: Michael Bridgen --- config/manager/manager.yaml | 3 +++ main.go | 8 ++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/config/manager/manager.yaml b/config/manager/manager.yaml index 1889734..40065a7 100644 --- a/config/manager/manager.yaml +++ b/config/manager/manager.yaml @@ -34,6 +34,9 @@ spec: fieldRef: fieldPath: metadata.namespace args: + - --watch-all-namespaces + - --log-level=info + - --log-json - --enable-leader-election resources: limits: diff --git a/main.go b/main.go index a9c43a5..3e6fca1 100644 --- a/main.go +++ b/main.go @@ -24,9 +24,9 @@ import ( clientgoscheme "k8s.io/client-go/kubernetes/scheme" _ "k8s.io/client-go/plugin/pkg/client/auth/gcp" ctrl "sigs.k8s.io/controller-runtime" - "sigs.k8s.io/controller-runtime/pkg/log/zap" imagev1alpha1_reflect "github.com/fluxcd/image-reflector-controller/api/v1alpha1" + "github.com/fluxcd/pkg/runtime/logger" sourcev1 "github.com/fluxcd/source-controller/api/v1beta1" imagev1alpha1_auto "github.com/fluxcd/image-automation-controller/api/v1alpha1" @@ -52,6 +52,8 @@ func main() { var ( metricsAddr string enableLeaderElection bool + logLevel string + logJSON bool watchAllNamespaces bool ) @@ -59,11 +61,13 @@ func main() { flag.BoolVar(&enableLeaderElection, "enable-leader-election", false, "Enable leader election for controller manager. "+ "Enabling this will ensure there is only one active controller manager.") + flag.StringVar(&logLevel, "log-level", "info", "Set logging level. Can be debug, info or error.") + flag.BoolVar(&logJSON, "log-json", false, "Set logging to JSON format.") flag.BoolVar(&watchAllNamespaces, "watch-all-namespaces", true, "Watch for custom resources in all namespaces, if set to false it will only watch the runtime namespace.") flag.Parse() - ctrl.SetLogger(zap.New(zap.UseDevMode(true))) + ctrl.SetLogger(logger.NewLogger(logLevel, logJSON)) watchNamespace := "" if !watchAllNamespaces {