@@ -17,14 +17,14 @@ const (
17
17
envLogTimestamp = "LOG_TIMESTAMP"
18
18
)
19
19
20
+ var _ Log = NewStderrLog(DebugKeyEmpty)
21
+
20
22
type StderrLog struct {
21
23
name string
22
24
logger *logrus.Logger
23
25
level LogLevel
24
26
}
25
27
26
- var _ Log = NewStderrLog(DebugKeyEmpty)
27
-
28
28
func NewStderrLog(name string) *StderrLog {
29
29
sl := &StderrLog{
30
30
name: name,
@@ -44,16 +44,7 @@ func NewStderrLog(name string) *StderrLog {
44
44
}
45
45
46
46
sl.logger.Out = StdErr
47
- formatter := &logrus.TextFormatter{
48
- DisableTimestamp: true, // `INFO[0007] msg` -> `INFO msg`
49
- EnvironmentOverrideColors: true,
50
- }
51
- if os.Getenv(envLogTimestamp) == "1" {
52
- formatter.DisableTimestamp = false
53
- formatter.FullTimestamp = true
54
- formatter.TimestampFormat = time.StampMilli
55
- }
56
- sl.logger.Formatter = formatter
47
+ sl.logger.Formatter = logFormatter
57
48
58
49
return sl
59
50
}
@@ -127,3 +118,24 @@ func (sl StderrLog) Child(name string) Log {
127
118
func (sl *StderrLog) SetLevel(level LogLevel) {
128
119
sl.level = level
129
120
}
121
+
122
+ var logFormatter = newLogFormatter()
123
+
124
+ func DisableColors(disable bool) {
125
+ logFormatter.DisableColors = disable
126
+ }
127
+
128
+ func newLogFormatter() *logrus.TextFormatter {
129
+ formatter := &logrus.TextFormatter{
130
+ DisableTimestamp: true, // `INFO[0007] msg` -> `INFO msg`
131
+ EnvironmentOverrideColors: true,
132
+ }
133
+
134
+ if os.Getenv(envLogTimestamp) == "1" {
135
+ formatter.DisableTimestamp = false
136
+ formatter.FullTimestamp = true
137
+ formatter.TimestampFormat = time.StampMilli
138
+ }
139
+
140
+ return formatter
141
+ }
0 commit comments