1
0
mirror of https://github.com/charlienet/go-mixed.git synced 2025-07-18 00:22:41 +08:00
Files
go-mixed/logx/logrus.go
2022-04-22 14:32:29 +08:00

38 lines
689 B
Go

package logx
import (
"github.com/sirupsen/logrus"
)
type logrusWrpper struct {
*logrus.Entry
}
func NewLogrus(opts ...logrusOption) *logrusWrpper {
logger := logrus.New()
logger.SetFormatter(NewNestedFormatter(NestedFormatterOption{}))
for _, o := range opts {
o(logger)
}
return &logrusWrpper{
Entry: logrus.NewEntry(logger),
}
}
func (l *logrusWrpper) SetLevel(level Level) {
l.Logger.SetLevel(logrus.Level(level))
}
func (l *logrusWrpper) WithField(key string, value any) Logger {
return l.WithFields(Fields{key: value})
}
func (l *logrusWrpper) WithFields(fields Fields) Logger {
return &logrusWrpper{
Entry: l.Logger.WithFields(logrus.Fields(fields)),
}
}