package zaplog type LogFileConfig struct { Filename string // 日志文件存放目录及名称,如果文件夹不存在会自动创建 FileSize_MB int // 文件大小限制,单位MB FileBackup int // 最大保留日志文件数量 FileAge_DAY int // 日志文件保留天数 } type ZapConfig struct { JsonFormat bool // 是否使用json格式,默认false NormalLog LogFileConfig // 普通日志配置 ErrorLog LogFileConfig // 错误日志配置 } var cfg_default = ZapConfig{ NormalLog: LogFileConfig{ Filename: "./log/normal_log", FileSize_MB: 5, FileBackup: 5, FileAge_DAY: 30, }, ErrorLog: LogFileConfig{ Filename: "./log/error_log", FileSize_MB: 5, FileBackup: 5, FileAge_DAY: 30, }, } func configDefault(config ...ZapConfig) ZapConfig { if len(config) < 1 { return cfg_default } cfg := config[0] if cfg.NormalLog.Filename == "" { cfg.NormalLog.Filename = cfg_default.NormalLog.Filename } if cfg.NormalLog.FileSize_MB == 0 { cfg.NormalLog.FileSize_MB = cfg_default.NormalLog.FileSize_MB } if cfg.NormalLog.FileBackup == 0 { cfg.NormalLog.FileBackup = cfg_default.NormalLog.FileBackup } if cfg.NormalLog.FileAge_DAY == 0 { cfg.NormalLog.FileAge_DAY = cfg_default.NormalLog.FileAge_DAY } 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 } return cfg }