nginx日志切割备份

直接上脚本

#!/bin/bash

#源日志目录
logs_path="/logs/nginx"

#备份日志目录
back_logs_path="${logs_path}/backup/$(date -d 'yesterday' +'%F')"

#创建备份目录,以日期命名,注意,每天零点整切割,开始记录新的一天的日志,备份目录应该是昨天
mkdir -p ${back_logs_path}

#重命名旧日志名,注意日期
cd ${logs_path} && find . -name '*access*' | xargs -i mv {} {}.$(date -d 'yesterday' +'%F')

#移动旧日志文件到该目录下
cd ${logs_path} && find . -name '*access*' | xargs -i mv {} ${back_logs_path}

#重新生成新日志
kill -USR1 `ps -ef | grep nginx| grep master | awk '{print $2}'`

# 删除三个月之前的备份日志
find /logs/nginx/backup/ -mindepth 1 -type d -mtime +92 -exec rm -rf "{}" \;

 

posted @ 2024-02-22 10:47  高佳丰  阅读(26)  评论(0编辑  收藏  举报