logger
logrus 封装:控制台彩色输出(Windows colorable)+ 按天轮转文件 + 历史日志压缩。
用法
import "git.zeroonesoft.cn/golib/zogo/logger"
logger.SetProjectPrefix("D:/gopath/your-service/") // 可选:日志里 file 字段去掉公共前缀
logger.InitLog(logrus.InfoLevel, true, "D:/logs/app") // 可变参数传日志目录则同时落文件
行为
- 控制台:强制彩色、完整时间戳、caller 显示为
相对路径:行号 - 落文件(传了 logDir 时):
app-YYYY-MM-DD.log全级别error-YYYY-MM-DD.log仅 Error 及以上- 按天轮转(file-rotatelogs)
logger.StartLogCompressor(logDir, interval):后台协程周期压缩历史日志(每日 0:00-0:30 跳过窗口)logger.CompressHistoryLogs(logDir):手动触发一次压缩
注意
初始化后请直接用 logrus.Info 等包级函数打日志,不要保存 logrus.Logger 实例调用,
否则 caller 文件位置信息会不准。