配置web服务器时,一般我们都会记录下请求的信息,以及错误的相关信息。
ErrorLog "/home/zhangy/apache/www.test.com-error.log"
CustomLog "/home/zhangy/apache/www.test.com-access.log" common
做了上面的配置,如果你不定期删除的话,我想随着时间的推移,这些日志文件能达到几个G的大小。占用资源不说,还不利于我们查看日志信息。其实对访问信息,以及错误错误只是为了帮助我们了解服务器的访问,运行情况,个人觉得只要了解近期的就OK了。
1,rotatelogs这样日志回滚的工具
CustomLog "|/usr/local/apache/bin/rotatelogs /home/zhangy/apache/www.test.com-access.log 10M" commom @H_403_19@当日志大小达到10M时,日志就会滚动,产生新的日志。当然你可以根据时间来进行滚动,把10M换成36000,表时日志10个小时滚动一次。 @H_403_19@[zhangy@BlackGhost apache]$ ls -tr |grep test
www.test.com-error.log
www.test.com-access.log
www.test.com-error.log.2010-11-05-14_50_00
www.test.com-access.log.1288968528
www.test.com-error.log.2010-11-05-14_48_20
www.test.com-access.log.1288968677
www.test.com-error.log.2010-11-05-14_56_40
www.test.com-error.log.2010-11-05-15_55_00
www.test.com-access.log.1288969444
2,利用graceful启动
[zhangy@BlackGhost apache]$ sudo /etc/init.d/apache2 graceful
[zhangy@BlackGhost apache]$ sudo sleep 100
[zhangy@BlackGhost apache]$ find . -name "*.bak" |xargs -i tar czvf logbak.tar.gz {}
./www.51yip.com-access.log.bak
./www.51yip.com-error.log.bak