码迷,mamicode.com
首页 > 编程语言 > 详细

python 日志logging设置按天进行保存,保存近7天,过期日志自动清理

时间:2021-06-17 17:02:45      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:注意   表达式   nbsp   handle   拓展   格式   set   python   Matter   

参考文章(写的很详细):https://www.cnblogs.com/xujunkai/p/12364619.html

前言:

跑接口自动化或者其他程序运行时,如果只能保存一份log文件,可能会存在,log文件越来越大的问题,加载缓慢,查找日志也比较慢,增加日志根据天来保存,定期清理日志,可以达到日志更好的管理,更加方便日志查找。

 

怎么实现?

使用的是python语言,加上logging的TimedRotatingFileHandler实现

        # 3、 输出到文件拓展,每天生成一个文件,保存近3天的的log文件,防止文件过大的
        # interval 滚动周期, when="MIDNIGHT", interval=1 表示每天0点为更新点,每天生成一个文件,backupCount  表示日志保存个数
        # filename:要加上每天的日期拼接组成
        logs_path = os.path.join(project_path.logs_path_day, ‘log‘)
        file_hander = TimedRotatingFileHandler(filename=logs_path, when=‘MIDNIGHT‘,
                                               interval=1, backupCount=3)
        # 设置生成日志文件名的格式,以年-月-日来命名
        # suffix设置,会生成文件名为log.2020-02-25.log
        file_hander.suffix = "%Y-%m-%d.log"
        # extMatch是编译好正则表达式,用于匹配日志文件名后缀
        # 需要注意的是suffix和extMatch一定要匹配的上,如果不匹配,过期日志不会被删除。
        file_hander.extMatch = re.compile(r"^\d{4}-\d{2}-\d{2}.log$")
        file_hander.setFormatter(formatter)

 

可以更改日志的滚动周期来验证日志的生成效果,如

技术图片

 

python 日志logging设置按天进行保存,保存近7天,过期日志自动清理

标签:注意   表达式   nbsp   handle   拓展   格式   set   python   Matter   

原文地址:https://www.cnblogs.com/cuitang/p/14892295.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!