我的 crontab 上有这个指令:
* * * * * /var/www/github/mysite/bin/email email worker await --pid=/var/run/mysite-worker-email.pid >> /tmp/mysite-worker-email.log
正如您所看到的,我的所有日志都写在/tmp/mysite-worker-email.log,有什么办法可以旋转该文件吗?
答案1
假设您在机器上拥有 root 权限。如果您使用的是共享主机,SF 无论如何都不适合您。
检查/etc/logrotate.conf
和是否/etc/logrotate.d
存在。如果存在,则添加一个具有合适名称的文件,例如,site_email
内容/etc/logrotate.d
如下:
/tmp/mysite-worker-email.log {
compress
daily
missingok
rotate 7
}
这将每天轮换日志文件,并保留过去 7 天的压缩副本。logrotate
还有更多选项,请参阅查看man logrotate.conf
全部选项。
请注意:保留日志文件/tmp
不是一个好主意。将它们放到/var/log/
它们应该放的地方,特别是如果你想保留日志文件的更多副本,并且不想在/tmp
清理时删除它们。