fix udp bind
This commit is contained in:
@ -8,10 +8,54 @@ import (
|
||||
"github.com/sirupsen/logrus"
|
||||
)
|
||||
|
||||
var (
|
||||
defaultLogger = NewLogger()
|
||||
)
|
||||
|
||||
func Default() Logger {
|
||||
return defaultLogger
|
||||
}
|
||||
|
||||
type logger struct {
|
||||
logger *logrus.Entry
|
||||
}
|
||||
|
||||
func NewLogger(opts ...LoggerOption) Logger {
|
||||
var options LoggerOptions
|
||||
for _, opt := range opts {
|
||||
opt(&options)
|
||||
}
|
||||
|
||||
log := logrus.New()
|
||||
if options.Output != nil {
|
||||
log.SetOutput(options.Output)
|
||||
}
|
||||
|
||||
switch options.Format {
|
||||
case TextFormat:
|
||||
log.SetFormatter(&logrus.TextFormatter{
|
||||
FullTimestamp: true,
|
||||
})
|
||||
default:
|
||||
log.SetFormatter(&logrus.JSONFormatter{
|
||||
DisableHTMLEscape: true,
|
||||
// PrettyPrint: true,
|
||||
})
|
||||
}
|
||||
|
||||
switch options.Level {
|
||||
case DebugLevel, InfoLevel, WarnLevel, ErrorLevel, FatalLevel:
|
||||
lvl, _ := logrus.ParseLevel(string(options.Level))
|
||||
log.SetLevel(lvl)
|
||||
default:
|
||||
log.SetLevel(logrus.InfoLevel)
|
||||
}
|
||||
|
||||
return &logger{
|
||||
logger: logrus.NewEntry(log),
|
||||
}
|
||||
}
|
||||
|
||||
// WithFields adds new fields to log.
|
||||
func (l *logger) WithFields(fields map[string]interface{}) Logger {
|
||||
return &logger{
|
||||
|
@ -2,8 +2,6 @@ package logger
|
||||
|
||||
import (
|
||||
"io"
|
||||
|
||||
"github.com/sirupsen/logrus"
|
||||
)
|
||||
|
||||
// LogFormat is format type
|
||||
@ -71,39 +69,3 @@ func LevelLoggerOption(level LogLevel) LoggerOption {
|
||||
opts.Level = level
|
||||
}
|
||||
}
|
||||
|
||||
func NewLogger(opts ...LoggerOption) Logger {
|
||||
var options LoggerOptions
|
||||
for _, opt := range opts {
|
||||
opt(&options)
|
||||
}
|
||||
|
||||
log := logrus.New()
|
||||
if options.Output != nil {
|
||||
log.SetOutput(options.Output)
|
||||
}
|
||||
|
||||
switch options.Format {
|
||||
case TextFormat:
|
||||
log.SetFormatter(&logrus.TextFormatter{
|
||||
FullTimestamp: true,
|
||||
})
|
||||
default:
|
||||
log.SetFormatter(&logrus.JSONFormatter{
|
||||
DisableHTMLEscape: true,
|
||||
// PrettyPrint: true,
|
||||
})
|
||||
}
|
||||
|
||||
switch options.Level {
|
||||
case DebugLevel, InfoLevel, WarnLevel, ErrorLevel, FatalLevel:
|
||||
lvl, _ := logrus.ParseLevel(string(options.Level))
|
||||
log.SetLevel(lvl)
|
||||
default:
|
||||
log.SetLevel(logrus.InfoLevel)
|
||||
}
|
||||
|
||||
return &logger{
|
||||
logger: logrus.NewEntry(log),
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user