Nginx log will increase with the amount of traffic, the larger log will affect the analysis log when the analysis and processing, we can use the shell to the Nginx log timing segmentation, to weeks or days, for a long time log can be deleted periodically, reduce disk waste
Code:
# cat logrotate.sh #!/bin/bash#rotate nginx logs#writen by AikerPATH=$PATH://usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/binlogs_path=/var/log/nginxd=$(date -d "-1 day" +%F)mv $logs_path/access.log $logs_path/access_${d}.logmv $logs_path/error.log $logs_path/error_${d}.log#向nginx主进程发送USR1信号重新打开日志文件kill -USR1 $(cat /var/run/nginx.pid)
Timed cut logs:
Crontab-e
0 0 * * 0 /root/script/logrotate.sh > /dev/null 2>&1
# ll /var/log/nginx/ total 64-rw-r--r-- 1 nginx root 3205 Feb 12 11:42 access_2018-02-11.log-rw-r--r-- 1 nginx root 41951 Feb 12 11:53 access.log-rw-r--r-- 1 nginx root 14441 Feb 9 10:12 error_2018-02-11.log-rw-r--r-- 1 nginx root 0 Feb 12 11:43 error.log
One shell per day (eight) Nginx log cutting