我有搜索和尝试,但未能获得预期的结果。
我希望我的apache2 access.log文件每天正好在午夜轮换。所以每天从00:00到23:59都有一个新的access.log文件。
目前,无论我尝试什么,它似乎做了自己的事情'并随时移动到新的access.log文件,当然不是在午夜。
我也对CustomLog,rotatelogs和logrotate非常困惑。
有人会帮忙解决如何让apache2 access.log在午夜时移动到新文件吗?
我尝试过的事情:
按如下方式修改/etc/logrotate.conf
# see "man logrotate" for details
# rotate log files weekly
daily
我尝试将CustomLog "|bin/rotatelogs -l /var/log/logfile.%Y.%m.%d 86400" common
添加到/etc/apache2/apache2.conf
但是apache在service apache2 restart
我希望它不会难以实现。我在Debian VM上运行apache2。谢谢。
更新:糟糕,我可以发誓我在serverfault发布了这个!
更新:所以我已经到了某个地方。我已将以下内容添加到000-default.conf文件
中LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" test
CustomLog "/var/log/apache2/test.log" test
这会生成一个名为test.log的新单独文件并正在记录,但如果我尝试使用此行CustomLog "|bin/rotatelogs -f /var/log/apache2/test.%Y.%m.%d.log 86400" test
然后Apache拒绝使用此Job for apache2.service failed because the control process exited with error code.
所以我所做的就是编写一个名称不同的新日志文件,没有真正获得。
如果我在命令行运行rotatelogs,它会响应,所以它肯定已安装。
有什么想法吗?