未分类
nginx日志切割脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# -*- coding: utf-8 -*- #!/usr/bin/env python # author:sean # nginx 日志切割脚本 # www.a.com.log www.a.com-YesterDay(%Y-%m-%d).log import os import datetime LogPath = "/data/logs/nginx" #日志所在目录 BakDir = "/data/logs/nginx/bak" #要备份到的目录 YesterDay = (datetime.datetime.now()+datetime.timedelta(days=-1)).strftime("%Y-%m-%d") if os.path.exists(BakDir): pass else: os.mkdir(BakDir) for root,dirs,files in os.walk(LogPath): for f in files: filename,ext = os.path.splitext(f) os.rename("{0}/{1}".format(root,f),"{0}/{1}-{2}{3}".format(root,filename,YesterDay,ext)) os.system("kill -USR1 'cat /usr/local/openresty/nginx/logs/nginx.pid'") time.sleep(5) os.system('find {0} -type f -name "*.log" -mtime +7 -exec rm -rf {} \;'.foramt(BakDir)) |