一、创建日志切分脚本文件
vi /data/aikube/scripts/cut_nginx_log.sh
内容为:
#/bin/bash
# 取前一天:要求计划任务应该在0点之后执行
yesterday=`date -d '-1 day' +%Y-%m-%d`
# 分割后的日志保存路径(结尾不加斜杠)
log_bak_path='/data/aikube/nginx-logs'
# nginx日志文件路径(结尾不加斜杠)
ng_log_path='/usr/local/openresty/nginx/logs'
# 判断分割日志保存目录是否存在不存在则创建
if [ ! -d ${log_bak_path} ]
then
mkdir -p ${log_bak_path}
fi
# 将日志移动到备份路径
mv ${ng_log_path}/access.log ${log_bak_path}/access_${yesterday}.log
mv ${ng_log_path}/error.log ${log_bak_path}/error_${yesterday}.log
# 删除7天前的备份文件
delday=`date -d '-8 day' +%Y-%m-%d`
rm -rf ${log_bak_path}/*${delday}.log
# 通知nginx重新生成新的日志
kill -USR1 `cat ${ng_log_path}/nginx.pid`
二、给与脚本执行权限
chmod 777 /data/aikube/scripts/cut_nginx_log.sh
三、创建定时任务
crontab -e
增加行输入下述内容:
1 0 * * * /data/aikube/scripts/cut_nginx_log.sh
nginx日志清理的自动任务
最新推荐文章于 2024-08-20 15:07:00 发布