作者:shunz 来源:BLOG家园-知识的积累与共享! 酷勤网收集 2008-07-10
Nginx是一款采用Linux 2.6内核epoll新机制开发的Web服务器软件,能极大地提高Web访问特别是小文件访问的I/O性能,是c10k问题的一个解决方案。有测试称Nginx比Apache效率提高10倍,而从我自己上次的测试来看,其并发性能确实比Apache强不少。Nginx以短小精悍著称,所以虽然一些web核心功能他都支持得挺好,但是一些扩展功能却还不能支持,比如Nginx目前就还不支持通过pipe输出log,所以就不支持利用cronolog来按时间进行日志截断回滚。下面提供一种替代解决方案:
#!/bin/sh
log_dir=”/var/log/httpd”
yesterday=`date +%Y%m%d`
lastday =`date +%Y%m%d -d ‘-1 month’`
/bin/rm ${log_dir}/access.${lastday}.log
/bin/rm ${log_dir}/error.${lastday}.log
/bin/mv ${log_dir}/access.log ${log_dir}/access.${yesterday}.log
/bin/mv ${log_dir}/error.log ${log_dir}/error.${yesterday}.log
kill -USR1 `cat /var/run/nginx.pid`
/bin/gzip ${log_dir}/access.${yesterday}.log &
/bin/gzip ${log_dir}/error.${yesterday}.log &
然后将该脚本保存在/etc/cron.daily目录里,或者在crontab里每日0点时运行。
另外,还可以结合awstats进行日志分析,这里就不详细说了,可以参考车东的相关文章。
来自:Nginx的日志回滚

