【发布时间】:2019-02-20 13:27:52
【问题描述】:
我对 pm2-logrotate 配置感到很困惑,我需要一些帮助。我搜索了文档并在谷歌上搜索了零结果。我只想每周轮换日志。
我尝试过使用pm2 set pm2-logrotate:rotateInverval 0 0 * * 0,但日志文件每天都会生成。
我只是不明白 cron 的东西,我需要一些解释,有人可以给我解释一下吗?
提前谢谢你。
【问题讨论】:
标签: node.js pm2 pm2-logrotate
我对 pm2-logrotate 配置感到很困惑,我需要一些帮助。我搜索了文档并在谷歌上搜索了零结果。我只想每周轮换日志。
我尝试过使用pm2 set pm2-logrotate:rotateInverval 0 0 * * 0,但日志文件每天都会生成。
我只是不明白 cron 的东西,我需要一些解释,有人可以给我解释一下吗?
提前谢谢你。
【问题讨论】:
标签: node.js pm2 pm2-logrotate
虽然你的 cronjob 看起来不错。但是还有一些其他配置也与 pm2-logrotate 相关联。与max_size 一样,默认的最大日志大小为 10 MB,如果您的日志超过该大小,则 pm2 将轮换它。假设您想将其更改为 10GB,然后发出此命令pm2 set pm2-logrotate:max_size 10G。您可以根据需要指定大小10K, 10M, 10G。当日志每天旋转 3-4 次而不是遵循指定的频率时,我也遇到了类似的问题。
【讨论】:
如果没有用引号括起来,很可能只有第一个 0 在您的时间间隔内被读取。因此,不是将区间解释为0 0 * * 0,而是将其解释为0。
以下应该可以解决问题:
pm2 set pm2-logrotate:rotateInverval "0 0 * * 0"
至于理解 cron 语法,请尝试将值粘贴到此处进行解释:https://crontab.guru/#0_0___0
【讨论】: