#此脚本用于自动分割Nginx的日志,包括access.log和error.log
#每天定时执行此脚本 将前一天的access.log重命名为access-xxxx-xx-xx.log格式,并重新打开日志文件
创建脚本:vi nginxLogRotate.sh
#注意给脚本执行权限
写入具体内容如下:
#!/bin/bash
#Nginx日志文件所在目录,根据需要修改
LOG_PATH=/opt/nginx/logs
#获取日期
YESTERDAY=$(date -d “yesterday” +%Y-%m-%d)
#获取pid文件路径,根据需要修改
PID=/opt/nginx/logs/nginx.pid
#分割日志
mv ${LOG_PATH}/access.log KaTeX parse error: Expected group after '_' at position 18: …OG_PATH}/access_̲{YESTERDAY}.log
mv ${LOG_PATH}/error.log KaTeX parse error: Expected group after '_' at position 17: …LOG_PATH}/error_̲{YESTERDAY}.log
#向Nginx主进程发送USR1信号,重新打开日志文件
kill -USR1 cat ${PID}
增加操作系统定时任务:crontab -e
写入具体内容如下:
#每天0点0分执行脚本
0 0 * * * nginxLogRotate.sh