1
0
mirror of https://github.com/charlienet/go-mixed.git synced 2025-07-18 00:22:41 +08:00
This commit is contained in:
2022-04-22 14:32:29 +08:00
parent efc8210d97
commit f7df1f1668
10 changed files with 276 additions and 82 deletions

View File

@ -1,40 +1,29 @@
package logx
import (
"fmt"
"path"
"runtime"
nested "github.com/antonfisher/nested-logrus-formatter"
"github.com/sirupsen/logrus"
)
type logrusWrpper struct {
logrus *logrus.Entry
*logrus.Entry
}
func NewLogrus() Logger {
func NewLogrus(opts ...logrusOption) *logrusWrpper {
logger := logrus.New()
logger.SetFormatter(
&nested.Formatter{
TimestampFormat: "2006-01-02 15:04:05.000",
NoColors: false,
CustomCallerFormatter: nestedCallerFormatter,
})
logger.SetFormatter(NewNestedFormatter(NestedFormatterOption{}))
for _, o := range opts {
o(logger)
}
return &logrusWrpper{
logrus: logrus.NewEntry(logger),
Entry: logrus.NewEntry(logger),
}
}
func nestedCallerFormatter(f *runtime.Frame) string {
_, filename := path.Split(f.File)
return fmt.Sprintf(" (%s() %s:%d)", f.Function, filename, f.Line)
}
func (l *logrusWrpper) SetLevel(level Level) {
l.logrus.Logger.SetLevel(logrus.Level(level))
l.Logger.SetLevel(logrus.Level(level))
}
func (l *logrusWrpper) WithField(key string, value any) Logger {
@ -43,66 +32,6 @@ func (l *logrusWrpper) WithField(key string, value any) Logger {
func (l *logrusWrpper) WithFields(fields Fields) Logger {
return &logrusWrpper{
logrus: l.logrus.WithFields(logrus.Fields(fields)),
Entry: l.Logger.WithFields(logrus.Fields(fields)),
}
}
func (l *logrusWrpper) Trace(args ...any) {
l.logrus.Trace(args...)
}
func (l *logrusWrpper) Tracef(format string, args ...any) {
l.logrus.Tracef(format, args...)
}
func (l *logrusWrpper) Debug(args ...any) {
l.logrus.Debug(args...)
}
func (l *logrusWrpper) Debugf(format string, args ...any) {
l.logrus.Debugf(format, args...)
}
func (l *logrusWrpper) Info(args ...any) {
l.logrus.Info(args...)
}
func (l *logrusWrpper) Infof(format string, args ...any) {
l.logrus.Infof(format, args...)
}
func (l *logrusWrpper) Warn(args ...any) {
l.logrus.Warn(args...)
}
func (l *logrusWrpper) Error(args ...any) {
l.logrus.Error(args...)
}
func (l *logrusWrpper) Warnf(format string, args ...any) {
l.logrus.Warnf(format, args...)
}
func (l *logrusWrpper) Errorf(format string, args ...any) {
l.logrus.Errorf(format, args...)
}
func (l *logrusWrpper) Fatal(args ...any) {
l.logrus.Fatal(args...)
}
func (l *logrusWrpper) Fatalf(format string, args ...any) {
l.logrus.Fatalf(format, args...)
}
func (l *logrusWrpper) Println(args ...any) {
l.logrus.Infoln(args...)
}
func (l *logrusWrpper) Print(args ...any) {
l.logrus.Info(args...)
}
func (l *logrusWrpper) Printf(format string, args ...any) {
l.logrus.Infof(format, args...)
}