Skip to content

Commit e4a6915

Browse files
authored
remove data race from zerolog provider (#487)
1 parent a5b9e0b commit e4a6915

File tree

1 file changed

+8
-9
lines changed

1 file changed

+8
-9
lines changed

providers/zerolog/logger.go

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,26 +16,25 @@ var _ logging.Logger = &Logger{}
1616

1717
// Logger is a zerolog logging adapter compatible with logging middlewares.
1818
type Logger struct {
19-
zerolog.Context
19+
zerolog.Logger
2020
}
2121

2222
// InterceptorLogger is a zerolog.Logger to Logger adapter.
2323
func InterceptorLogger(logger zerolog.Logger) *Logger {
24-
return &Logger{logger.With()}
24+
return &Logger{logger}
2525
}
2626

2727
// Log implements the logging.Logger interface.
2828
func (l *Logger) Log(lvl logging.Level, msg string) {
29-
cl := l.Logger()
3029
switch lvl {
3130
case logging.DEBUG:
32-
cl.Debug().Msg(msg)
31+
l.Debug().Msg(msg)
3332
case logging.INFO:
34-
cl.Info().Msg(msg)
33+
l.Info().Msg(msg)
3534
case logging.WARNING:
36-
cl.Warn().Msg(msg)
35+
l.Warn().Msg(msg)
3736
case logging.ERROR:
38-
cl.Error().Msg(msg)
37+
l.Error().Msg(msg)
3938
default:
4039
// TODO(kb): Perhaps this should be a logged warning, defaulting to ERROR to get attention
4140
// without interrupting code flow?
@@ -44,10 +43,10 @@ func (l *Logger) Log(lvl logging.Level, msg string) {
4443
}
4544

4645
// With implements the logging.Logger interface.
47-
func (l *Logger) With(fields ...string) logging.Logger {
46+
func (l Logger) With(fields ...string) logging.Logger {
4847
vals := make(map[string]interface{}, len(fields)/2)
4948
for i := 0; i < len(fields); i += 2 {
5049
vals[fields[i]] = fields[i+1]
5150
}
52-
return InterceptorLogger(l.Fields(vals).Logger())
51+
return InterceptorLogger(l.Logger.With().Fields(vals).Logger())
5352
}

0 commit comments

Comments
 (0)