kit/log/zaplog/config.go

125 lines
3.2 KiB
Go
Raw Normal View History

2023-11-12 23:21:04 +08:00
package zaplog
type LogFileConfig struct {
Filename string // 日志文件存放目录及名称,如果文件夹不存在会自动创建
FileSize_MB int // 文件大小限制,单位MB
FileBackup int // 最大保留日志文件数量
FileAge_DAY int // 日志文件保留天数
}
type ZapConfig struct {
JsonFormat bool // 是否使用json格式,默认false
2024-06-23 18:00:49 +08:00
DebugLog LogFileConfig // Debug日志配置
InfoLog LogFileConfig // Info日志配置
WarnLog LogFileConfig // Warn日志配置
ErrorLog LogFileConfig // Error日志配置
FatalLog LogFileConfig // Fatal日志配置
2023-11-12 23:21:04 +08:00
}
var cfg_default = ZapConfig{
2024-06-23 18:00:49 +08:00
DebugLog: LogFileConfig{
Filename: "./log/debug",
FileSize_MB: 5,
FileBackup: 5,
FileAge_DAY: 30,
},
InfoLog: LogFileConfig{
Filename: "./log/info",
FileSize_MB: 5,
FileBackup: 5,
FileAge_DAY: 30,
},
WarnLog: LogFileConfig{
Filename: "./log/warn",
2023-11-12 23:21:04 +08:00
FileSize_MB: 5,
FileBackup: 5,
FileAge_DAY: 30,
},
ErrorLog: LogFileConfig{
2024-06-23 18:00:49 +08:00
Filename: "./log/error",
FileSize_MB: 5,
FileBackup: 5,
FileAge_DAY: 30,
},
FatalLog: LogFileConfig{
Filename: "./log/fatal",
2023-11-12 23:21:04 +08:00
FileSize_MB: 5,
FileBackup: 5,
FileAge_DAY: 30,
},
}
func configDefault(config ...ZapConfig) ZapConfig {
if len(config) < 1 {
return cfg_default
}
cfg := config[0]
2024-06-23 18:00:49 +08:00
if cfg.DebugLog.Filename == "" {
cfg.DebugLog.Filename = cfg_default.DebugLog.Filename
}
if cfg.DebugLog.FileSize_MB == 0 {
cfg.DebugLog.FileSize_MB = cfg_default.DebugLog.FileSize_MB
}
if cfg.DebugLog.FileBackup == 0 {
cfg.DebugLog.FileBackup = cfg_default.DebugLog.FileBackup
2023-11-12 23:21:04 +08:00
}
2024-06-23 18:00:49 +08:00
if cfg.DebugLog.FileAge_DAY == 0 {
cfg.DebugLog.FileAge_DAY = cfg_default.DebugLog.FileAge_DAY
2023-11-12 23:21:04 +08:00
}
2024-06-23 18:00:49 +08:00
if cfg.InfoLog.Filename == "" {
cfg.InfoLog.Filename = cfg_default.InfoLog.Filename
}
if cfg.InfoLog.FileSize_MB == 0 {
cfg.InfoLog.FileSize_MB = cfg_default.InfoLog.FileSize_MB
}
if cfg.InfoLog.FileBackup == 0 {
cfg.InfoLog.FileBackup = cfg_default.InfoLog.FileBackup
}
if cfg.InfoLog.FileAge_DAY == 0 {
cfg.InfoLog.FileAge_DAY = cfg_default.InfoLog.FileAge_DAY
}
if cfg.WarnLog.Filename == "" {
cfg.WarnLog.Filename = cfg_default.WarnLog.Filename
}
if cfg.WarnLog.FileSize_MB == 0 {
cfg.WarnLog.FileSize_MB = cfg_default.WarnLog.FileSize_MB
}
if cfg.WarnLog.FileBackup == 0 {
cfg.WarnLog.FileBackup = cfg_default.WarnLog.FileBackup
2023-11-12 23:21:04 +08:00
}
2024-06-23 18:00:49 +08:00
if cfg.WarnLog.FileAge_DAY == 0 {
cfg.WarnLog.FileAge_DAY = cfg_default.WarnLog.FileAge_DAY
2023-11-12 23:21:04 +08:00
}
2024-06-23 18:00:49 +08:00
2023-11-12 23:21:04 +08:00
if cfg.ErrorLog.Filename == "" {
cfg.ErrorLog.Filename = cfg_default.ErrorLog.Filename
}
if cfg.ErrorLog.FileSize_MB == 0 {
cfg.ErrorLog.FileSize_MB = cfg_default.ErrorLog.FileSize_MB
}
if cfg.ErrorLog.FileBackup == 0 {
cfg.ErrorLog.FileBackup = cfg_default.ErrorLog.FileBackup
}
if cfg.ErrorLog.FileAge_DAY == 0 {
cfg.ErrorLog.FileAge_DAY = cfg_default.ErrorLog.FileAge_DAY
}
2024-06-23 18:00:49 +08:00
if cfg.FatalLog.Filename == "" {
cfg.FatalLog.Filename = cfg_default.FatalLog.Filename
}
if cfg.FatalLog.FileSize_MB == 0 {
cfg.FatalLog.FileSize_MB = cfg_default.FatalLog.FileSize_MB
}
if cfg.FatalLog.FileBackup == 0 {
cfg.FatalLog.FileBackup = cfg_default.FatalLog.FileBackup
}
if cfg.FatalLog.FileAge_DAY == 0 {
cfg.FatalLog.FileAge_DAY = cfg_default.FatalLog.FileAge_DAY
}
2023-11-12 23:21:04 +08:00
return cfg
}