[Bug] RotateTime.level()
ly020044 opened this issue · comments
System (please complete the following information):
- OS:
macOS
- GO Version:
1.21.0
- Pkg Version:
0.5.4
Describe the bug
当我配置按日期的方式来滚动日志时,当大于 1 天时只能按 1 天来滚动日志。
To Reproduce
seconds := 604800 // 7天
handler.NewTimeRotateFileHandler(
logFile,
rotatefile.RotateTime(seconds),
handler.WithLogLevels(parseLevels(log.level)),
handler.WithBuffSize(log.bufferSize),
handler.WithBackupNum(log.maxBackups),
handler.WithCompress(log.compress),
handler.WithFilePerm(log.filePerm),
请查看一下这个方法 RotateTime.level
看了代码,感觉没问题啊。第一次是按当天的结束时间开始切,下一次是在 curTime + checkInterval(= 604800)
时切割处理。
实际生产环境:设置了备份间隔为1星期,再加上 rotate backup 为 20(保留20个 rotate 之后的log文件),但实际有且只有一个 rotate 后的 log 文件。