作者:coralzd 网址 www.freebsdsystem.org/cut_nginx_logs
继续共享在线上运行一年半的nginx 日志切割脚本。
引用
- #!/bin/bash
- # powered by www.freebsdsystem.org
- # author:coralzd
- # The Nginx logs path
- logs_path="/data0/logs"
- logs_dir=${logs_path}/$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")
- logs_file=$(date -d "yesterday" +"%Y%m%d")
- mkdir -p /data0/backuplogs/$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")
- tar -czf ${logs_path}/${logs_file}.tar.gz ${logs_path}/*.log
- rm -rf ${logs_path}/*.log
- mv ${logs_path}/${logs_file}.tar.gz /data0/backuplogs/$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")
- /usr/local/nginx/sbin/nginx -s reload
- for oldfiles in `find /data0/backuplogs/$(date -d "30 days ago" +"%Y")/$(date -d "30 days ago" +"%m")/ -type f -mtime +30`
- do
- rm -f $oldfiles
- done
置于crond 中每天0点运行
- 00 00 * * * /usr/local/sbin/cut-logs.sh 2>&1 >/dev/null &
转载于:https://blog.51cto.com/coralzd/504489