package util import ( "os" "go.uber.org/zap" "go.uber.org/zap/zapcore" ) var Logger *zap.Logger func InitLogger(level string) { var zapLevel zapcore.Level switch level { case "debug": zapLevel = zap.DebugLevel case "info": zapLevel = zap.InfoLevel case "warn": zapLevel = zap.WarnLevel case "error": zapLevel = zap.ErrorLevel default: zapLevel = zap.InfoLevel } encoderConfig := zap.NewProductionEncoderConfig() encoderConfig.EncodeTime = zapcore.ISO8601TimeEncoder encoderConfig.EncodeLevel = zapcore.CapitalLevelEncoder core := zapcore.NewCore( zapcore.NewConsoleEncoder(encoderConfig), zapcore.AddSync(os.Stdout), zapLevel, ) Logger = zap.New(core, zap.AddCaller()) }