extended output + colors
This commit is contained in:
parent
81213c67f8
commit
150c5193e1
1 changed files with 37 additions and 2 deletions
|
|
@ -41,8 +41,43 @@ func (f *CustomFormatter) Format(entry *logrus.Entry) ([]byte, error) {
|
|||
line = entry.Caller.Line
|
||||
}
|
||||
|
||||
logLine := fmt.Sprintf("[%s][%s][%s:%d] %s\n",
|
||||
level, timestamp, file, line, msg)
|
||||
colorCode := f.getLevelColor(entry.Level)
|
||||
resetCode := "\033[0m"
|
||||
coloredLevel := fmt.Sprintf("%s[%s]%s", colorCode, level, resetCode)
|
||||
|
||||
errVal := entry.Data["error"]
|
||||
if errVal == nil {
|
||||
errVal = "\n"
|
||||
} else {
|
||||
errVal = fmt.Sprintf("---%v\n\n", errVal)
|
||||
}
|
||||
|
||||
cyanCode := f.getLevelColor(logrus.TraceLevel)
|
||||
filename := fmt.Sprintf("%s[%s:%d]%s", cyanCode, file, line, resetCode)
|
||||
|
||||
logLine := fmt.Sprintf("%s[%s]%v %s\n%v",
|
||||
coloredLevel, timestamp, filename, msg, errVal)
|
||||
|
||||
return []byte(logLine), nil
|
||||
}
|
||||
|
||||
func (f *CustomFormatter) getLevelColor(level logrus.Level) string {
|
||||
switch level {
|
||||
case logrus.PanicLevel:
|
||||
return "\033[35m" // Magenta
|
||||
case logrus.FatalLevel:
|
||||
return "\033[35m" // Magenta
|
||||
case logrus.ErrorLevel:
|
||||
return "\033[31m" // Red
|
||||
case logrus.WarnLevel:
|
||||
return "\033[33m" // Yellow
|
||||
case logrus.InfoLevel:
|
||||
return "\033[32m" // Green
|
||||
case logrus.DebugLevel:
|
||||
return "\033[34m" // Blue
|
||||
case logrus.TraceLevel:
|
||||
return "\033[36m" // Cyan
|
||||
default:
|
||||
return "\033[0m" // No color
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue