nginx泡得太久,日誌就越來越大,有必要對其切割下,也便於按天統計訪問量神馬的。
沒啥難度,短短几行的腳本即可
#!/bin/bash # Description: rotate nginx access logs NGX_PID=`cat /usr/local/nginx/logs/nginx.pid` LOGS_DIR="/home/wwwlogs" WWW_LOG_NAME="www.demo.com.log" B2B_LOG_NAME="b2b.demo.com.log" MOBILE_LOG_NAME="mobile.demo.com.log" PLIST_LOG_NAME="plist.demo.com.log" cd $LOGS_DIR /usr/bin/mv $WWW_LOG_NAME $(date +%F -d 'yesterday')_$WWW_LOG_NAME /usr/bin/mv $B2B_LOG_NAME $(date +%F -d 'yesterday')_$B2B_LOG_NAME /usr/bin/mv $MOBILE_LOG_NAME $(date +%F -d 'yesterday')_$MOBILE_LOG_NAME /usr/bin/mv $PLIST_LOG_NAME $(date +%F -d 'yesterday')_$PLIST_LOG_NAME /bin/kill -USR1 $NGX_PID
加到cron計劃任務中
echo "0 0 * * * /home/scripts/rotate-nginx-logs.sh > /dev/null 2>&1">> /var/spool/cron/root