日志规范:
1.修改配置文件及创建文件夹
#cat createlogdir.sh
#! /bin/bash
CONFDIR=$1
LOGDIR=/data/wwwlogs
#遍历配置文件创建日志目录
for file in `ls -1 ${CONFDIR} |grep -v bak |grep -v back |grep -v tar`
do
FILEFULL=$CONFDIR/$file
if [ -f $FILEFULL ];
then
CDIR=`echo $file |sed "s/\.conf//g"`
mkdir -p $LOGDIR/$CDIR/{access,error}
sed -i 's/access_log/#access_log/g' $FILEFULL
sed -i 's/error_log/#error_log/g' $FILEFULL
sed -i '$s/\}//' $FILEFULL
echo "access_log $LOGDIR/$CDIR/access/$CDIR-access.log;" >> $FILEFULL
echo "error_log $LOGDIR/$CDIR/error/$CDIR-error.log;" >> $FILEFULL
echo "}" >> $FILEFULL
#判断是否存在ext目录
if [ -d /etc/logrotate.d/ext ];
then
echo "/etc/logrotate.d/ext 已存在"
else
mkdir /etc/logrotate.d/ext
fi
#添加logrotate配置文件
cat > /etc/logrotate.d/ext/$CDIR <<EOF
$LOGDIR/$CDIR/access/$CDIR-access.log $LOGDIR/$CDIR/error/$CDIR-error.log {
su root root
daily
missingok
rotate 7
nocompress
notifempty
create 640 nginx adm
sharedscripts
postrotate
if [ -f /var/run/nginx.pid ]; then
kill -USR1 \`cat /var/run/nginx.pid\`
fi
endscript
}
EOF
fi
done
#nginx -t
#nginx -s reload
2.logrotate配置
sed -i '/include /a\include \/etc\/logrotate.d\/ext' /etc/logrotate.conf
3.修改定时执行时间
#cat /etc/anacrontab
START_HOURS_RANGE=0-01
4.生效logrotate配置
#logrotate -f /etc/logrotate.conf