Skip to content

Commit bce8a33

Browse files
committed
添加change level 测试用例
1 parent 475f190 commit bce8a33

File tree

3 files changed

+35
-3
lines changed

3 files changed

+35
-3
lines changed

logger/zap/core.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,14 @@ var (
2323
_log unsafe.Pointer // Pointer to a coreLogger. Access via atomic.LoadPointer.
2424
)
2525

26+
// 初始化默认Logger
2627
func init() {
2728
storeLogger(&coreLogger{
2829
selectors: map[string]struct{}{},
2930
rootLogger: zap.NewNop(),
3031
globalLogger: zap.NewNop(),
3132
logger: newLogger(zap.NewNop(), ""),
33+
atom: zap.NewAtomicLevel(),
3234
})
3335
}
3436

logger/zap/core_test.go

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,3 +161,35 @@ func TestL(t *testing.T) {
161161
assert.Equal(t, "warning 1", log.Message)
162162
}
163163
}
164+
165+
func TestChangeLevel(t *testing.T) {
166+
if err := zap.DevelopmentSetup(zap.ToObserverOutput()); err != nil {
167+
t.Fatal(err)
168+
}
169+
170+
const loggerName = "tester"
171+
logger := zap.NewLogger(loggerName)
172+
173+
logger.Debug("debug")
174+
logs := zap.ObserverLogs().TakeAll()
175+
if assert.Len(t, logs, 1) {
176+
assert.Equal(t, loggerName, logs[0].LoggerName)
177+
assert.Equal(t, "debug", logs[0].Message)
178+
}
179+
180+
zap.SetLevel(zap.ErrorLevel)
181+
logger.Info("info")
182+
logs = zap.ObserverLogs().TakeAll()
183+
assert.Len(t, logs, 0)
184+
185+
logger.Warn("warn")
186+
logs = zap.ObserverLogs().TakeAll()
187+
assert.Len(t, logs, 0)
188+
189+
logger.Error("error")
190+
logs = zap.ObserverLogs().TakeAll()
191+
if assert.Len(t, logs, 1) {
192+
assert.Equal(t, loggerName, logs[0].LoggerName)
193+
assert.Equal(t, "error", logs[0].Message)
194+
}
195+
}

logger/zap/logger.go

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,6 @@ func (l *Logger) Named(name string) logger.Logger {
6060
return &Logger{logger, logger.Sugar()}
6161
}
6262

63-
// Sprint
64-
6563
// Debug uses fmt.Sprint to construct and log a message.
6664
func (l *Logger) Debug(args ...interface{}) {
6765
l.sugar.Debug(args...)
@@ -211,7 +209,7 @@ func (l *Logger) Recover(msg string) {
211209
}
212210

213211
// SetLevel 动态设置日志等级
214-
func (l *Logger) SetLevel(lv Level) {
212+
func SetLevel(lv Level) {
215213
loadLogger().atom.SetLevel(lv.zapLevel())
216214
}
217215

0 commit comments

Comments
 (0)