做运维,一定要管好应用的日志,定期压缩日志文件(配置定时任务),减少磁盘空间的浪费。
# -*- coding: utf-8 -*-
__author__ = 'yangwenren'
import sys
import os
import time
import shutil
import datetime
import zipfile
reload(sys)
sys.setdefaultencoding('utf8')
# 今天日期的字符串
today_str = datetime.datetime.today().strftime("%Y%m%d")
# 当前工作目录
project_path = os.getcwd()
# 日志目录
#log_path = project_path + os.sep + "log"
log_path = r"D:\kcxp\log"
# 存放压缩日志的目录
#save_log_zip_path = project_path + os.sep + "kcxp"
save_log_zip_path = r"D:\log\kcxp"
# 初始化一些环境
def init():
# 初始化日志目录
if not os.path.exists(save_log_zip_path):
os.makedirs(save_log_zip_path)
# 压缩非当天日志目录
def ziplog(source_path, des_path):
for dir in os.listdir(source_path):
print dir
log_dir = source_path + os.sep + dir
des_file = des_path + os.sep + dir + ".zip"
if dir < today_str :
f = zipfile.ZipFile(des_file, 'w', zipfile.ZIP_DEFLATED)
for file in os.listdir(log_dir):
f.write(log_dir+os.sep+file, file)
f.close()
## 删除原文件
shutil.rmtree(log_dir)
if __name__ =="__main__":
# 初始化环境
init()
# 压缩日志文件
ziplog(log_path, save_log_zip_path)
print "End Task......"
time.sleep(300)