上一节日志配置好以后,会一直写入信息到/tmp/access.log里面,假如日志不去整理,总有一天会把硬盘塞满,所以我们需要做日志切割,每天生成一个新的日志,把旧的超过多少天的日志删除,我们需要去写个Nginx的日志切割脚本。
(把Nginx所有脚本放在这个目录下)
[root@LampLinux ~]# vim /usr/local/sbin/nginx_logrotate.sh
#!/bin/bash d=`date -d "-1 day" +%F` [ -d /tmp/nginx_log ] || mkdir /tmp/nginx_log mv /tmp/access.log /tmp/nginx_log/$d.log /etc/init.d/nginx reload > /dev/null cd /tmp/nginx_log/ gzip -f $d.log
执行一下,需要把脚本命令加入到任务计划:(-x 意为 “可查看过程”)
[root@LampLinux ~]# sh -x /usr/local/sbin/nginx_logrotate.sh
++ date -d ‘-1 day‘ +%F
+ d=2015-08-11
+ ‘[‘ -d /tmp/nginx_log ‘]‘
+ mkdir /tmp/nginx_log
+ mv /tmp/access.log /tmp/nginx_log/2015-08-11.log
+ /etc/init.d/nginx reload
+ cd /tmp/nginx_log/
+ gzip -f 2015-08-11.log
原日志文件内容为空:
[root@LampLinux ~]# cat /tmp/access.log
查看切割,并压缩完成的日志:
[root@LampLinux ~]# ls /tmp/nginx_log/
2015-08-11.log.gz
原文地址:http://286577399.blog.51cto.com/10467610/1683890