zap是uber开源的Go高性能日志库
封装
package log
import (
"os"
"go.uber.org/zap"
"go.uber.org/zap/zapcore"
)
var (
logger *zap.Logger
automicLevel = zap.NewAtomicLevelAt(zapcore.InfoLevel)
)
func init() {
writeSyncer := zapcore.AddSync(os.Stdout)
encoderConfig := zapcore.EncoderConfig{
TimeKey: "time",
LevelKey: "level",
NameKey: "logger",
CallerKey: "caller",
MessageKey: "msg",
StacktraceKey: "stacktrace",
LineEnding: zapcore.DefaultLineEnding,
EncodeLevel: zapcore.LowercaseLevelEncoder,
EncodeTime: zapcore.ISO8601TimeEncoder,
EncodeDuration: zapcore.SecondsDurationEncoder,
EncodeCaller: zapcore.FullCallerEncoder,
EncodeName: zapcore.FullNameEncoder,
}
encoder := zapcore.NewJSONEncoder(encoderConfig)
core := zapcore.NewCore(
encoder,
writeSyncer,
automicLevel)
logge