27 lines
663 B
Go
27 lines
663 B
Go
package log
|
|
|
|
import (
|
|
"go.uber.org/zap/zapcore"
|
|
"time"
|
|
)
|
|
|
|
type Encoder = zapcore.Encoder
|
|
|
|
// NewEncoder 创建一个 Minotaur 默认使用的编码器
|
|
func NewEncoder() Encoder {
|
|
return zapcore.NewConsoleEncoder(zapcore.EncoderConfig{
|
|
MessageKey: "msg",
|
|
LevelKey: "level",
|
|
EncodeLevel: zapcore.CapitalLevelEncoder,
|
|
TimeKey: "ts",
|
|
EncodeTime: func(t time.Time, enc zapcore.PrimitiveArrayEncoder) {
|
|
enc.AppendString(t.Format(time.DateTime))
|
|
},
|
|
CallerKey: "file",
|
|
EncodeCaller: zapcore.ShortCallerEncoder,
|
|
EncodeDuration: func(d time.Duration, enc zapcore.PrimitiveArrayEncoder) {
|
|
enc.AppendInt64(int64(d) / 1000000)
|
|
},
|
|
})
|
|
}
|