Nginx日志切割的方法
Nginx日志切割的方法
nginx泡得太久,日志就越来越大,有必要对其切割下,也便于按天统计访问量神马的。
这是我在3A平台云服务器部署的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