Skip to content

Commit

Permalink
Take logger out in utils, as used in multiple places
Browse files Browse the repository at this point in the history
Signed-off-by: Abhijit Mukherjee <abhijit.mukherjee@infracloud.io>
  • Loading branch information
mabhi committed Feb 23, 2024
1 parent 3cf8da7 commit 05504a0
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 30 deletions.
32 changes: 4 additions & 28 deletions cmd/reposervercontroller/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,33 +20,28 @@ import (
"os"
"strconv"

// Import all Kubernetes client auth plugins (e.g. Azure, GCP, OIDC, etc.)
// to ensure that exec-entrypoint and run can make use of them.
"go.uber.org/zap/zapcore"
"k8s.io/apimachinery/pkg/runtime"
utilruntime "k8s.io/apimachinery/pkg/util/runtime"
"k8s.io/client-go/discovery"
clientgoscheme "k8s.io/client-go/kubernetes/scheme"
_ "k8s.io/client-go/plugin/pkg/client/auth"
ctrl "sigs.k8s.io/controller-runtime"
"sigs.k8s.io/controller-runtime/pkg/healthz"
"sigs.k8s.io/controller-runtime/pkg/log/zap"
"sigs.k8s.io/controller-runtime/pkg/metrics/server"
"sigs.k8s.io/controller-runtime/pkg/webhook"
"sigs.k8s.io/controller-runtime/pkg/webhook/admission"

crv1alpha1 "github.com/kanisterio/kanister/pkg/apis/cr/v1alpha1"
"github.com/kanisterio/kanister/pkg/controllers/repositoryserver"
"github.com/kanisterio/kanister/pkg/log"
"github.com/kanisterio/kanister/pkg/resource"
"github.com/kanisterio/kanister/pkg/validatingwebhook"
//+kubebuilder:scaffold:imports
"github.com/kanisterio/kanister/pkg/utils"
)

var (
scheme = runtime.NewScheme()
setupLog = ctrl.Log.WithName("setup")
defaultLogLevel = zapcore.InfoLevel
scheme = runtime.NewScheme()
setupLog = ctrl.Log.WithName("setup")
)

const (
Expand All @@ -66,18 +61,11 @@ func main() {
var metricsAddr string
var probeAddr string
flag.StringVar(&probeAddr, "health-probe-bind-address", ":8081", "The address the probe endpoint binds to.")
logLevel := getLogLevel()

opts := zap.Options{
Level: logLevel,
}

// Disable metrics server
metricsAddr = "0"
opts.BindFlags(flag.CommandLine)
flag.Parse()
logger := zap.New(zap.UseFlagOptions(&opts))
ctrl.SetLogger(logger)
ctrl.SetLogger(utils.GetLogger())
config := ctrl.GetConfigOrDie()
mgr, err := ctrl.NewManager(config, ctrl.Options{
Scheme: scheme,
Expand Down Expand Up @@ -158,15 +146,3 @@ func main() {
os.Exit(1)
}
}

func getLogLevel() zapcore.Level {
logLevel := os.Getenv(log.LevelEnvName)
if logLevel == "" {
return defaultLogLevel
}
level, err := zapcore.ParseLevel(logLevel)
if err != nil {
return defaultLogLevel
}
return level
}
4 changes: 2 additions & 2 deletions pkg/handler/handler.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,12 @@ import (

"k8s.io/client-go/rest"
"sigs.k8s.io/controller-runtime/pkg/log"
"sigs.k8s.io/controller-runtime/pkg/log/zap"
"sigs.k8s.io/controller-runtime/pkg/manager"
"sigs.k8s.io/controller-runtime/pkg/manager/signals"
"sigs.k8s.io/controller-runtime/pkg/webhook"
"sigs.k8s.io/controller-runtime/pkg/webhook/admission"

"github.com/kanisterio/kanister/pkg/utils"
"github.com/kanisterio/kanister/pkg/validatingwebhook"
"github.com/kanisterio/kanister/pkg/version"
"github.com/pkg/errors"
Expand Down Expand Up @@ -65,7 +65,7 @@ func (*healthCheckHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {

// RunWebhookServer starts the validating webhook resources for blueprint kanister resources
func RunWebhookServer(c *rest.Config) error {
log.SetLogger(zap.New())
log.SetLogger(utils.GetLogger())
mgr, err := manager.New(c, manager.Options{})
if err != nil {
return errors.Wrapf(err, "Failed to create new webhook manager")
Expand Down
30 changes: 30 additions & 0 deletions pkg/utils/utils.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,18 +16,26 @@ package utils

import (
"context"
"flag"
"fmt"
"os"
"strconv"
"strings"
"time"

"github.com/go-logr/logr"
"github.com/pkg/errors"
"go.uber.org/zap/zapcore"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes"

"github.com/kanisterio/kanister/pkg/field"
"github.com/kanisterio/kanister/pkg/log"
"sigs.k8s.io/controller-runtime/pkg/log/zap"
)

var (
defaultLogLevel = zapcore.InfoLevel
)

type indicator string
Expand Down Expand Up @@ -114,3 +122,25 @@ func RoundUpDuration(t time.Duration) time.Duration {
}
return t.Round(time.Hour)
}

func getLogLevel() zapcore.Level {
logLevel := os.Getenv(log.LevelEnvName)
if logLevel == "" {
return defaultLogLevel
}
level, err := zapcore.ParseLevel(logLevel)
if err != nil {
return defaultLogLevel
}
return level
}

func GetLogger() logr.Logger {
logLevel := getLogLevel()
opts := zap.Options{
Level: logLevel,
}
opts.BindFlags(flag.CommandLine)
logger := zap.New(zap.UseFlagOptions(&opts))
return logger
}

0 comments on commit 05504a0

Please sign in to comment.