package logger import ( "os" "go.uber.org/zap" "go.uber.org/zap/zapcore" ) var Log *zap.Logger func InitLogger() { 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.StringDurationEncoder, EncodeCaller: zapcore.ShortCallerEncoder, } // Debug consoleEncoder := zapcore.NewConsoleEncoder(encoderConfig) core := zapcore.NewTee( zapcore.NewCore(consoleEncoder, zapcore.AddSync(os.Stdout), zap.DebugLevel), ) Log = zap.New(core, zap.AddCaller()) } func Sync() { if Log != nil { _ = Log.Sync() } }