authorizer/server/logs/text.go
Untone acc471e500
All checks were successful
deploy / deploy (push) Successful in 7s
log-error-more
2024-12-11 22:40:26 +03:00

46 lines
1.0 KiB
Go

package logs
import (
"fmt"
"path/filepath"
"strings"
"github.com/sirupsen/logrus"
)
type LogTextFormatter struct {
logrus.Formatter
}
func (u LogTextFormatter) Format(e *logrus.Entry) ([]byte, error) {
level := strings.ToUpper(e.Level.String())
message := e.Message
parts := strings.SplitN(message, " +0000]", 2)
if len(parts) >= 2 {
message = parts[1]
}
var color string
switch e.Level {
case logrus.DebugLevel:
color = "\033[36m" // cyan
case logrus.InfoLevel:
color = "\033[37m" // grey
case logrus.WarnLevel:
color = "\033[33m" // yellow
case logrus.ErrorLevel, logrus.FatalLevel, logrus.PanicLevel:
color = "\033[31m" // red
default:
color = "\033[0m" // reset
}
if e.Caller != nil {
fmt.Sprintf("%r", e)
file := filepath.Base(e.Caller.File)
line := e.Caller.Line
return []byte(fmt.Sprintf("%s[%s] %s:%d %s%s\033[0m\n", color, level, file, line, message, color)), nil
}
return []byte(fmt.Sprintf("%s[%s] %s%s\033[0m\n", color, level, message, color)), nil
}