Documentation ¶
Index ¶
- Constants
- Variables
- func DPanic(msg string, fields ...zap.Field)
- func Debug(msg string, fields ...zap.Field)
- func Error(msg string, fields ...zap.Field)
- func Fatal(msg string, fields ...zap.Field)
- func Info(msg string, fields ...zap.Field)
- func NewEncoderConfigTextDevCustom(l *Logger) (encoderConfig zapcore.EncoderConfig, err error)
- func NewEncoderConfigTextDevDefault(l *Logger) (encoderConfig zapcore.EncoderConfig, err error)
- func NewEncoderConfigTextProdCustom(l *Logger) (encoderConfig zapcore.EncoderConfig, err error)
- func NewEncoderConfigTextProdDefault(l *Logger) (encoderConfig zapcore.EncoderConfig, err error)
- func Panic(msg string, fields ...zap.Field)
- func SugarDPanic(args ...interface{})
- func SugarDPanicf(template string, args ...interface{})
- func SugarDebug(args ...interface{})
- func SugarDebugf(template string, args ...interface{})
- func SugarError(args ...interface{})
- func SugarErrorf(template string, args ...interface{})
- func SugarFatal(args ...interface{})
- func SugarFatalf(template string, args ...interface{})
- func SugarInfo(args ...interface{})
- func SugarInfof(template string, args ...interface{})
- func SugarPanic(args ...interface{})
- func SugarPanicf(template string, args ...interface{})
- func SugarWarn(args ...interface{})
- func SugarWarnf(template string, args ...interface{})
- func Warn(msg string, fields ...zap.Field)
- type Logger
- func (l *Logger) CustomEncoderConfig(encoderConfig *zapcore.EncoderConfig) (err error)
- func (l *Logger) GetEncoder(encoderConfig zapcore.EncoderConfig) (encoder zapcore.Encoder, err error)
- func (l *Logger) GetEncoderConfig() (encoderConfig zapcore.EncoderConfig, err error)
- func (l *Logger) GetFileLogWriter(fileConfig *LoggerFileConfig) zapcore.WriteSyncer
- type LoggerConfig
- type LoggerFileConfig
Constants ¶
View Source
const ( // 默认的日志名 DefaultHighLevelFileName = "error" DefaultLowLevelFileName = "info.log" )
View Source
const ( // 选择 LoggerConfig.EncoderText 时使用 EncoderTextJSON = "json" EncoderTextConsole = "console" // 选择环境 LoggerConfig.EncoderConfigText EncoderConfigTextProdCustom = "prod" EncoderConfigTextProdDefault = "prod_default" EncoderConfigTextDevCustom = "dev" EncoderConfigTextDevDefault = "dev_default" )
Variables ¶
View Source
var ( BusinessLoggerMgr *Logger BusinessSugaredLogger *zap.SugaredLogger BusinessLoggerMgrOnce sync.Once )
View Source
var ( // DefaultBusinessFileCfg 默认 业务 日志文件配置 // 默认 不会根据时间删除旧的日志文件 DefaultBusinessFileCfg = &LoggerFileConfig{ FileName: DefaultLowLevelFileName, MaxSize: 200, MaxBackups: 100, Compress: true, } // ProdEnableStacktrace 生产环境 是否开启 高级别错误 堆栈信息记录 ProdEnableStacktrace = true )
View Source
var ( // 根据不同的 LoggerConfig.EncoderText 返回不同的生成 zapcore.Encoder 的函数 NewEncoderFuncMap = map[string]func(zapcore.EncoderConfig) zapcore.Encoder{ EncoderTextJSON: zapcore.NewJSONEncoder, EncoderTextConsole: zapcore.NewConsoleEncoder, } // 根据不同的 LoggerConfig.EncoderConfigText 返回不同的生成 zapcore.EncoderConfig 的函数 NewEncoderConfigFuncMap = map[string]func(*Logger) (zapcore.EncoderConfig, error){ EncoderConfigTextDevDefault: NewEncoderConfigTextDevDefault, EncoderConfigTextDevCustom: NewEncoderConfigTextDevCustom, EncoderConfigTextProdDefault: NewEncoderConfigTextProdDefault, EncoderConfigTextProdCustom: NewEncoderConfigTextProdCustom, } )
Functions ¶
func NewEncoderConfigTextDevCustom ¶
func NewEncoderConfigTextDevCustom(l *Logger) (encoderConfig zapcore.EncoderConfig, err error)
func NewEncoderConfigTextDevDefault ¶
func NewEncoderConfigTextDevDefault(l *Logger) (encoderConfig zapcore.EncoderConfig, err error)
NewEncoderConfigTextDevDefault 开发环境默认的 EncoderConfig 配置
func NewEncoderConfigTextProdCustom ¶
func NewEncoderConfigTextProdCustom(l *Logger) (encoderConfig zapcore.EncoderConfig, err error)
func NewEncoderConfigTextProdDefault ¶
func NewEncoderConfigTextProdDefault(l *Logger) (encoderConfig zapcore.EncoderConfig, err error)
NewEncoderConfigTextProdDefault 生产环境默认的 EncoderConfig 配置
func SugarDPanic ¶
func SugarDPanic(args ...interface{})
func SugarDPanicf ¶
func SugarDPanicf(template string, args ...interface{})
func SugarDebug ¶
func SugarDebug(args ...interface{})
func SugarDebugf ¶
func SugarDebugf(template string, args ...interface{})
func SugarError ¶
func SugarError(args ...interface{})
func SugarErrorf ¶
func SugarErrorf(template string, args ...interface{})
func SugarFatal ¶
func SugarFatal(args ...interface{})
func SugarFatalf ¶
func SugarFatalf(template string, args ...interface{})
func SugarInfof ¶
func SugarInfof(template string, args ...interface{})
func SugarPanic ¶
func SugarPanic(args ...interface{})
func SugarPanicf ¶
func SugarPanicf(template string, args ...interface{})
func SugarWarnf ¶
func SugarWarnf(template string, args ...interface{})
Types ¶
type Logger ¶
func NewBusinessLoggerMgr ¶
func NewBusinessLoggerMgr(loggerConfig *LoggerConfig) (*Logger, *zap.Logger, error)
NewBusinessLoggerMgr 构建业务日志 记录器
func NewLogger ¶
func NewLogger(loggerConfig *LoggerConfig) (log *Logger, err error)
NewLogger 构建一个 日志实例
func (*Logger) CustomEncoderConfig ¶
func (l *Logger) CustomEncoderConfig(encoderConfig *zapcore.EncoderConfig) (err error)
CustomEncoderConfig 配置自动定义 配置编码器 zapcore.EncoderConfig
func (*Logger) GetEncoder ¶
func (l *Logger) GetEncoder(encoderConfig zapcore.EncoderConfig) (encoder zapcore.Encoder, err error)
GetEncoder 获取 日志编码器 zapcore.Encoder
func (*Logger) GetEncoderConfig ¶
func (l *Logger) GetEncoderConfig() (encoderConfig zapcore.EncoderConfig, err error)
GetEncoderConfig 获取 配置编码器 zapcore.EncoderConfig
func (*Logger) GetFileLogWriter ¶
func (l *Logger) GetFileLogWriter(fileConfig *LoggerFileConfig) zapcore.WriteSyncer
GetFileLogWriter 结合日志切割工具设置日志输出接口
type LoggerConfig ¶
type LoggerConfig struct { OutputConsole bool `mapstructure:"output_console"` // 是否输出到控制台 OutputFile bool `mapstructure:"output_file"` // 是否输出到日志文件 SplitWriteFromLevel bool `mapstructure:"split_write_from_level"` // 是否根据不同的日志级别写不同的日志 Stacktrace bool `mapstructure:"stacktrace"` // 是否 记录高级别日志时记录对应的堆栈信息 LowLevel string `mapstructure:"low_level"` // 低级别日志等级, 不同级别的日志 写入的不同日志文件, HighLevel string `mapstructure:"high_level"` // 同时高级别的日志也会记录 堆栈信息 LowLevelFile *LoggerFileConfig `mapstructure:"low_level_file"` HighLevelFile *LoggerFileConfig `mapstructure:"high_level_file"` TimeEncoderText string `mapstructure:"time_encoder_text"` // 时间格式编码器, 输出时间的格式 LevelEncoderText string `mapstructure:"level_encoder_text"` // 日志等级编码器; A LevelEncoder serializes a Level to a primitive type. DurationEncoderText string `mapstructure:"duration_encoder_text"` // 持续时间编码器; A DurationEncoder serializes a time.Duration to a primitive type. CallerEncoderText string `mapstructure:"caller_encoder_text"` // 调用文本编码器; 输出文件信息时,是以/full/path/to/package/file:line 全路径还是 package/file:line 的短路径 TimeKey string `mapstructure:"time_key"` // 输出日志时时间的key LevelKey string `mapstructure:"level_key"` // 日志级别的key CallerKey string `mapstructure:"callel_key"` // 调用文本的key; file:line MessageKey string `mapstructure:"message_key"` // 日志内容的key StacktraceKey string `mapstructure:"stacktrace_key"` // 堆栈信息的key CallerSkip int `mapstructure:"caller_skip"` // 跳过几层调用者,在对zap输出的方法进行封装时会使用该参数 EncoderText string `mapstructure:"encoder_text"` // 日志编码器, 用来决定日志记录的整体形式; 有 json 和 console 2 种 EncoderConfigText string `mapstructure:"encoder_config_text"` // 日志配置编码器, An EncoderConfig allows users to configure the concrete encoders supplied by zapcore. // contains filtered or unexported fields }
LoggerConfig 提供生成一个 zap.Logger + lumberjack 的配置
func BetaBusinessLogCfg ¶
func BetaBusinessLogCfg() (cfg *LoggerConfig)
BetaBusinessLogCfg 测试 环境 默认日志配置; 输出到文件
func DevBusinessLogCfg ¶
func DevBusinessLogCfg() (cfg *LoggerConfig)
DevBusinessLogCfg 开发 环境 默认日志配置; 输出到文件
func LocalBusinessLogCfg ¶
func LocalBusinessLogCfg() (cfg *LoggerConfig)
LocalBusinessLogCfg 本地开发 环境 默认日志配置; 输出到控制台
func ProdBusinessLogCfg ¶
func ProdBusinessLogCfg() (cfg *LoggerConfig)
ProdBusinessLogCfg 生产 环境 默认日志配置 输出到文件, 进行日志分级输出
func UatBusinessLogCfg ¶
func UatBusinessLogCfg() (cfg *LoggerConfig)
UatBusinessLogCfg uat/pre 环境 默认日志配置 输出到文件, 进行日志分级输出
func (*LoggerConfig) CheckLoggerConfig ¶
func (l *LoggerConfig) CheckLoggerConfig() (err error)
checkLoggerConfig 检查 要生成新的 日志记录器的配置
Click to show internal directories.
Click to hide internal directories.