Skip to content

Commit c84fba8

Browse files
authored
Merge pull request kubernetes-sigs#320 from presslabs/raw-zap-logger
✨ Add zap.RawLoggerTo which returns a configured zap logger
2 parents c2f9dae + 82c389a commit c84fba8

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

pkg/log/zap/zap.go

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,17 @@ func Logger(development bool) logr.Logger {
4141
// to the given destination, instead of stderr. It otherwise behaves like
4242
// ZapLogger.
4343
func LoggerTo(destWriter io.Writer, development bool) logr.Logger {
44+
return zapr.NewLogger(RawLoggerTo(destWriter, development))
45+
}
46+
47+
// RawLoggerTo returns a new zap.Logger configured with KubeAwareEncoder
48+
// which logs to a given destination
49+
func RawLoggerTo(destWriter io.Writer, development bool, opts ...zap.Option) *zap.Logger {
4450
// this basically mimics New<type>Config, but with a custom sink
4551
sink := zapcore.AddSync(destWriter)
4652

4753
var enc zapcore.Encoder
4854
var lvl zap.AtomicLevel
49-
var opts []zap.Option
5055
if development {
5156
encCfg := zap.NewDevelopmentEncoderConfig()
5257
enc = zapcore.NewConsoleEncoder(encCfg)
@@ -64,5 +69,5 @@ func LoggerTo(destWriter io.Writer, development bool) logr.Logger {
6469
opts = append(opts, zap.AddCallerSkip(1), zap.ErrorOutput(sink))
6570
log := zap.New(zapcore.NewCore(&KubeAwareEncoder{Encoder: enc, Verbose: development}, sink, lvl))
6671
log = log.WithOptions(opts...)
67-
return zapr.NewLogger(log)
72+
return log
6873
}

0 commit comments

Comments
 (0)