|
|
@@ -69,26 +69,28 @@ func (f formatFunc) Format(r *Record) []byte {
|
|
|
//
|
|
|
// [May 16 20:58:45] [DBUG] remove route ns=haproxy addr=127.0.0.1:50002
|
|
|
//
|
|
|
-func TerminalFormat() Format {
|
|
|
+func TerminalFormat(usecolor bool) Format {
|
|
|
return FormatFunc(func(r *Record) []byte {
|
|
|
var color = 0
|
|
|
- switch r.Lvl {
|
|
|
- case LvlCrit:
|
|
|
- color = 35
|
|
|
- case LvlError:
|
|
|
- color = 31
|
|
|
- case LvlWarn:
|
|
|
- color = 33
|
|
|
- case LvlInfo:
|
|
|
- color = 32
|
|
|
- case LvlDebug:
|
|
|
- color = 36
|
|
|
- case LvlTrace:
|
|
|
- color = 34
|
|
|
+ if usecolor {
|
|
|
+ switch r.Lvl {
|
|
|
+ case LvlCrit:
|
|
|
+ color = 35
|
|
|
+ case LvlError:
|
|
|
+ color = 31
|
|
|
+ case LvlWarn:
|
|
|
+ color = 33
|
|
|
+ case LvlInfo:
|
|
|
+ color = 32
|
|
|
+ case LvlDebug:
|
|
|
+ color = 36
|
|
|
+ case LvlTrace:
|
|
|
+ color = 34
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
b := &bytes.Buffer{}
|
|
|
- lvl := strings.ToUpper(r.Lvl.String())
|
|
|
+ lvl := r.Lvl.AlignedString()
|
|
|
if atomic.LoadUint32(&locationEnabled) != 0 {
|
|
|
// Log origin printing was requested, format the location path and line number
|
|
|
location := fmt.Sprintf("%+v", r.Call)
|
|
|
@@ -107,13 +109,13 @@ func TerminalFormat() Format {
|
|
|
if color > 0 {
|
|
|
fmt.Fprintf(b, "\x1b[%dm%s\x1b[0m[%s|%s]%s %s ", color, lvl, r.Time.Format(termTimeFormat), location, padding, r.Msg)
|
|
|
} else {
|
|
|
- fmt.Fprintf(b, "[%s] [%s|%s]%s %s ", lvl, r.Time.Format(termTimeFormat), location, padding, r.Msg)
|
|
|
+ fmt.Fprintf(b, "%s[%s|%s]%s %s ", lvl, r.Time.Format(termTimeFormat), location, padding, r.Msg)
|
|
|
}
|
|
|
} else {
|
|
|
if color > 0 {
|
|
|
fmt.Fprintf(b, "\x1b[%dm%s\x1b[0m[%s] %s ", color, lvl, r.Time.Format(termTimeFormat), r.Msg)
|
|
|
} else {
|
|
|
- fmt.Fprintf(b, "[%s] [%s] %s ", lvl, r.Time.Format(termTimeFormat), r.Msg)
|
|
|
+ fmt.Fprintf(b, "%s[%s] %s ", lvl, r.Time.Format(termTimeFormat), r.Msg)
|
|
|
}
|
|
|
}
|
|
|
// try to justify the log output for short messages
|