-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbase.go
51 lines (43 loc) · 1.12 KB
/
base.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
package stdlog
type Level int
const (
LevelDebug Level = iota
LevelInfo
LevelWarning
LevelError
LevelFatal
)
func (l Level) String() string {
switch l {
case LevelDebug:
return "DEBUG"
case LevelInfo:
return "INFO"
case LevelWarning:
return "WARN"
case LevelError:
return "ERROR"
case LevelFatal:
return "FATAL"
default:
return "UNKNOWN"
}
}
type Logger interface {
// Named returns a new logger with its previous name followed by a dot,
// followed by the provided name.
Named(name string) Logger
// SetLevel sets the logger level.
SetLevel(level Level)
// Leveled returns a copy of the current logger with a different level.
Leveled(level Level) Logger
// WithFields returns a copy of the current logger with extra provided
// fields that will be present in every emitted log message.
WithFields(keysAndValues ...any) Logger
Debug(msg string, keysAndValues ...any)
Info(msg string, keysAndValues ...any)
Warning(msg string, keysAndValues ...any)
Error(err error, msg string, keysAndValues ...any)
Fatal(msg string, keysAndValues ...any)
FatalError(err error, msg string, keysAndValues ...any)
}