分享
脚本如下,每天生成一个日志,并删除30天之前的日志;将脚本加入到系统定时任务每天凌晨执行
$ cd /usr/nginx/
$ vim cut_nginx_log.sh
#!/bin/bash
LOGS_PATH=/app/nginx/logs
YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)
KEEPTIME=$(date -d "-30 days" +%Y-%m-%d)
mv ${LOGS_PATH}/access.log ${LOGS_PATH}/access_${YESTERDAY}.log
mv ${LOGS_PATH}/error.log ${LOGS_PATH}/error_${YESTERDAY}.log
kill -USR1 $(cat /app/nginx/logs/nginx.pid)
##delete logs 30 days ago
rm -f ${LOGS_PATH}/access_${KEEPTIME}.log
rm -f ${LOGS_PATH}/error_${KEEPTIME}.log
加入到系统定时任务,注意脚本要赋予可执行权限
$ crontab -e
0 0 * * * /usr/nginx/cut_nginx_log.sh
原文链接:https://blog.youkuaiyun.com/wsyzcj/article/details/115187945