python压缩日志并删除原文件

做运维,一定要管好应用的日志,定期压缩日志文件(配置定时任务),减少磁盘空间的浪费。

# -*- 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)


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值