github.com/kubeshop/testkube@v1.17.23/pkg/log/log.go (about) 1 package log 2 3 import ( 4 "log" 5 6 "go.uber.org/zap" 7 8 "github.com/kubeshop/testkube/pkg/envs" 9 ) 10 11 // New returns new logger instance 12 func New() *zap.SugaredLogger { 13 atomicLevel := zap.NewAtomicLevel() 14 15 atomicLevel.SetLevel(zap.InfoLevel) 16 if envs.IsTrue("DEBUG") { 17 atomicLevel.SetLevel(zap.DebugLevel) 18 } 19 20 zapCfg := zap.NewProductionConfig() 21 zapCfg.Level = atomicLevel 22 23 z, err := zapCfg.Build() 24 if err != nil { 25 log.Fatalf("can't initialize zap logger: %v", err) 26 } 27 logger := z.Sugar() 28 return logger 29 } 30 31 // DefaultLogger initialized default logger 32 var DefaultLogger *zap.SugaredLogger 33 34 func init() { 35 DefaultLogger = New() 36 }