Skip to content

Commit ec7c1b5

Browse files
committed
Switch to baseLogger for clarity
1 parent 55b0820 commit ec7c1b5

File tree

1 file changed

+22
-17
lines changed

1 file changed

+22
-17
lines changed

internal/logging/logger.go

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import (
44
"fmt"
55
"io"
66
"os"
7+
"slices"
78
"strings"
89
"sync"
910
"time"
@@ -12,10 +13,10 @@ import (
1213
)
1314

1415
type Logger struct {
15-
defaultLogger *zerolog.Logger
16-
scopeLoggers map[string]*zerolog.Logger
17-
scopeLevels map[string]zerolog.Level
18-
loggerMutex sync.Mutex
16+
baseLogger *zerolog.Logger
17+
scopeLoggers map[string]*zerolog.Logger
18+
scopeLevels map[string]zerolog.Level
19+
loggerMutex sync.Mutex
1920

2021
defaultLogLevelFromEnv zerolog.Level
2122
defaultLogLevelFromConfig zerolog.Level
@@ -46,14 +47,16 @@ func (w *logOutput) Write(p []byte) (n int, err error) {
4647
}
4748

4849
var (
50+
excludedFields = []string{"scope", "component", "subcomponent"}
51+
partsOrder = []string{"time", "level", "scope", "component", "subcomponent", "message"}
4952
consoleLogOutput io.Writer = zerolog.ConsoleWriter{
5053
Out: os.Stdout,
5154
TimeFormat: time.RFC3339,
52-
PartsOrder: []string{"time", "level", "scope", "component", "message"},
53-
FieldsExclude: []string{"scope", "component"},
55+
PartsOrder: partsOrder,
56+
FieldsExclude: excludedFields,
5457
FormatPartValueByName: func(value any, name string) string {
5558
val := fmt.Sprintf("%s", value)
56-
if name == "component" {
59+
if slices.Contains(excludedFields, name) {
5760
if value == nil {
5861
return "-"
5962
}
@@ -80,7 +83,7 @@ var (
8083

8184
func NewLogger(zerologLogger zerolog.Logger) *Logger {
8285
return &Logger{
83-
defaultLogger: &zerologLogger,
86+
baseLogger: &zerologLogger,
8487
scopeLoggers: make(map[string]*zerolog.Logger),
8588
scopeLevels: make(map[string]zerolog.Level),
8689
loggerMutex: sync.Mutex{},
@@ -91,11 +94,8 @@ func NewLogger(zerologLogger zerolog.Logger) *Logger {
9194
}
9295

9396
func (l *Logger) updateLogLevels(newConfigLevel zerolog.Level) {
94-
logger := l.defaultLogger.
95-
Level(zerolog.InfoLevel).
96-
With().
97-
Interface("newConfigLevel", newConfigLevel).
98-
Logger()
97+
logger := l.baseLogger.Level(zerolog.InfoLevel).With().Logger()
98+
logger.Info().Msgf("updating log levels with new config level: %v", newConfigLevel)
9999

100100
l.defaultLogLevelFromConfig = newConfigLevel
101101
l.scopeLevels = make(map[string]zerolog.Level)
@@ -108,7 +108,7 @@ func (l *Logger) updateLogLevels(newConfigLevel zerolog.Level) {
108108
loopLogger := logger.With().
109109
Str("name", name).
110110
Str("env", env).
111-
Interface("envLevel", envLevel).
111+
Stringer("envLevel", envLevel).
112112
Logger()
113113

114114
if env == "all" {
@@ -119,7 +119,12 @@ func (l *Logger) updateLogLevels(newConfigLevel zerolog.Level) {
119119
scopes := strings.SplitSeq(env, ",")
120120
for scope := range scopes {
121121
loopLogger.Info().Msgf("setting log level for scope %s from environment", scope)
122-
l.scopeLevels[scope] = envLevel
122+
123+
if envLevel == unset {
124+
delete(l.scopeLevels, scope)
125+
} else {
126+
l.scopeLevels[scope] = envLevel
127+
}
123128
}
124129
}
125130
}
@@ -172,7 +177,7 @@ func (l *Logger) getLogger(scope string) *zerolog.Logger {
172177
}
173178

174179
scopeLevel := l.getScopeLoggerLevel(scope)
175-
logger := l.defaultLogger.Level(scopeLevel).With().Str("component", scope).Logger()
180+
logger := l.baseLogger.Level(scopeLevel).With().Str("component", scope).Logger()
176181
l.scopeLoggers[scope] = &logger
177182
return &logger
178183
}
@@ -181,7 +186,7 @@ func (l *Logger) UpdateConfigLogLevel(configDefaultLogLevel string) {
181186
var newConfigLevel zerolog.Level
182187

183188
configDefaultLogLevel = strings.ToUpper(configDefaultLogLevel)
184-
loggingContext := l.defaultLogger.With().Str("configDefaultLogLevel", configDefaultLogLevel)
189+
loggingContext := l.baseLogger.With().Str("configDefaultLogLevel", configDefaultLogLevel)
185190
logger := loggingContext.Logger()
186191

187192
if configDefaultLogLevel != "" {

0 commit comments

Comments
 (0)