access_log似乎是永久大小0.但error_log被写入罚款。
令人惊讶的是access_log。[1-5] .gz被创build,但是只有access_log.3.gz和access_log.4.gz包含非空的日志。
好的,这里是logrotate.conf,它也在logfiles目录中:
# create new (empty) log files after rotating old ones create # compress old logs with gzip compress /home/default/example.com/user/logfiles/access_log { missingok rotate 5 daily postrotate /usr/bin/killall -HUP syslogd endscript } /home/default/example.com/user/logfiles/error_log { missingok rotate 5 size=5M postrotate /bin/kill -USR1 `cat /var/run/httpd.pid` endscript } /home/default/example.com/user/logfiles/agent_log { missingok rotate 5 size=5M postrotate /bin/kill -USR1 `cat /var/run/httpd.pid` endscript } /home/default/example.com/user/logfiles/referer_log { missingok rotate 5 size=5M postrotate /bin/kill -USR1 `cat /var/run/httpd.pid` endscript }
虽然没有agent_log,referer_log文件。 那么这个logrotate.conf有什么明显的错误吗? 如果不是,我怎么知道这个文件是否被使用或者是问题? 如果需要,我可以发布更多信息。
顺便说一句,服务器是Ubuntu 8.10。
更新:htttd.pid甚至不存在。
ubuntu:~# cat /var/run/httpd.pid cat: /var/run/httpd.pid: No such file or directory
你的postrotate被设置为重新启动syslogd。 我相信你需要这样做的httpd。
你有没有检查你的Apache设置? Logrotate只是旋转日志文件,它不写入他们。 所以如果你的日志文件缺less内容,那么你应该先看看你的Apache设置。