nginx的日志一直是写在一个文件上面,运行久了之后文件会非常大,因此我们有必要对nginx的日志进行分割:
1 2 3 4 5 6 7 8 9 10 11 |
#! /bin/bash ACCESS_LOG=/data/nginx/www.log ERROR_LOG=/data/nginx/error.log YESTERDAY=$(date -d "yesterday" +%Y-%m-%d) #mv logs echo "move log files" mv ${ACCESS_LOG} /data/logs/nginx/www.log-${YESTERDAY} mv ${ERROR_LOG} /data/logs/nginx/error-log-${YESTERDAY} echo "reopen log files" kill -USR1 $(cat /data/nginx/nginx.pid) echo "done" |
上面代码有几个地方的变量需要读者们改成自己相关的设置。最关键是kill –USR1 重启相关日志,但是进程并不会重启。
在crontab -e中输入如下命令来每周运行一次
1 |
0 1 * * 1 /data/nginx/nginx-log.sh |
nginx日志分割小脚本
时间: 2024-10-16 20:37:16