【Python】 日志管理之loguru库-自定义日志旋转和压缩

loguru 是一个友好的python 日志库

但目前版本尚存在一些问题,比如:
logger.add创建的文件是根据应用程序的启动时间来旋转的,而不是基于文件的创建日期

比如说你设置一天一次旋转,但是需要你下次程序再次启动和这次程序启动时间差一天才会旋转,而不是程序运行够一天时间就会旋转。

自定义旋转

作者原本的目的是让每次启动应用程序时启动一个新的日志文件(例如,使用log .add(“file_{time}.log”))才有意义。
这样,就不用创建“file_2019-02-18_12:00 -00”。日志”、“file_2019-02-18_13-00-00。日志”、“file_2019 - 02 - 18 - _14 - 00 - 00. -日志”…无限期地,这只保留最新的

但这样显示不符合更高的需求实现,比如说我想实现
一个小时一个日志文件,最近7天的保留, 超过7天的,按天压缩后存储

这样一个小时一个文件的就没办法实现,所以才需要自定义函数,可喜的是logger.add的各个旋转参数都支持传入函数,比如我想实现一个小时一个文件,就可以使用如下代码:

一小时一文件

def should_rotate(message, file):
    filepath = os.path.abspath(file.name)
 
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值