nginx日志分割脚本及crontab

版权声明:本文为博主原创文章,转载请注明出处!!!(●◡●) https://blog.csdn.net/Small_Mouse0/article/details/86598115

日志分割脚本:

#!/bin/bash
year=`date +%Y`
month=`date +%m`
day=`date +%d`
logs_backup_path="/data/log/nginx/$year$month"               #日志存储路径

logs_path="/data/log/nginx/"                                 #要切割的日志路径
logs_access="access"                                         #要切割的日志
logs_error="error"
pid_path="/usr/local/nginx/logs/nginx.pid"                    #nginx的pid

[ -d $logs_backup_path ]||mkdir -p $logs_backup_path
rq=`date +%Y%m%d`
#mv ${logs_path}${logs_access}.log ${logs_backup_path}/${logs_access}_${rq}.log
mv ${logs_path}${logs_error}.log ${logs_backup_path}/${logs_error}_${rq}.log
kill -USR1 $(cat /usr/local/nginx/logs/nginx.pid)

crontab 配置,每天晚上凌晨备份一次

55 23 * * * sh /data/log/nginx_log_cut.sh

亲测好用,,,每天 23:55会吧日志切割备份

【1】原理是吧日志文件移动到对应日期目录下
【2】重启nginx(nginx记录时,日志文件不存在,可能会造成nginx运行异常)

猜你喜欢

转载自blog.csdn.net/Small_Mouse0/article/details/86598115
今日推荐