8 // NewNullLogger instantiates a Logger for which all calls
9 // will succeed without doing anything.
10 // Useful for testing purposes.
11 func NewNullLogger() Logger {
15 type nullLogger struct{}
17 func (l *nullLogger) Trace(msg string, args ...interface{}) {}
19 func (l *nullLogger) Debug(msg string, args ...interface{}) {}
21 func (l *nullLogger) Info(msg string, args ...interface{}) {}
23 func (l *nullLogger) Warn(msg string, args ...interface{}) {}
25 func (l *nullLogger) Error(msg string, args ...interface{}) {}
27 func (l *nullLogger) IsTrace() bool { return false }
29 func (l *nullLogger) IsDebug() bool { return false }
31 func (l *nullLogger) IsInfo() bool { return false }
33 func (l *nullLogger) IsWarn() bool { return false }
35 func (l *nullLogger) IsError() bool { return false }
37 func (l *nullLogger) With(args ...interface{}) Logger { return l }
39 func (l *nullLogger) Named(name string) Logger { return l }
41 func (l *nullLogger) ResetNamed(name string) Logger { return l }
43 func (l *nullLogger) SetLevel(level Level) {}
45 func (l *nullLogger) StandardLogger(opts *StandardLoggerOptions) *log.Logger {
46 return log.New(ioutil.Discard, "", log.LstdFlags)