nginx 是没有自动分割日志的,所以就需要自己实现日志分割
原 站点所有日志都放在一个目录里(文件名即站点名)
分割方式:每个站点一个目录,每天生成一个日志文件,根据文件名称生成目录
呆狐狸.凨
1.lanmps_cut_log.sh shell文件
#!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/root/bin:~/bin export PATH # Check if user is root if [ $UID != 0 ]; then echo "Error: You must be root to run the install script, please use root to install lanmps";exit;fi #日志目录 IN_WEB_LOG_DIR="/www/wwwLogs" YESTERDAY=`date -d "yesterday" +%Y-%m-%d` [ ! -d $IN_WEB_LOG_DIR/logs ] && mkdir $IN_WEB_LOG_DIR/logs for filename in `ls $IN_WEB_LOG_DIR` do if [ -f $IN_WEB_LOG_DIR/$filename ] ; then #echo $IN_WEB_LOG_DIR/$filename #echo $IN_WEB_LOG_DIR/logs/${filename%.log}/${YESTERDAY}.log tmpPath=$IN_WEB_LOG_DIR/logs/${filename%.log} [ ! -d $tmpPath ] && mkdir $tmpPath mv $IN_WEB_LOG_DIR/$filename $tmpPath/${YESTERDAY}.log rm -rf $IN_WEB_LOG_DIR/$filename fi done #nginx pid 文件位置 kill -USR1 `cat /www/lanmps/nginx/logs/nginx.pid`
保存位置 例如:/root/lanmps_cut_log.sh
2.定时任务
#在 每天凌晨00:01运行 1 0 * * * /root/lanmps_cut_log.sh