我在我的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中 ,有没有办法让这个文件旋转?
假设你在机器上拥有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被清理时被删除。