首页 > 编程语言 >python logging 自定义备份的日志文件命名

python logging 自定义备份的日志文件命名

时间:2024-07-04 22:42:55浏览次数:17  
标签:logging name 自定义 python namer split file log

import time
import logging
from logging.handlers import TimedRotatingFileHandler


def log_file_namer(log_file_name):
    log_file_name_split = log_file_name.split('.')
    log_suffix = log_file_name_split.pop(1)
    log_file_name_split.append(log_suffix)
    return '.'.join(log_file_name_split)


if __name__ == '__main__':
    logging.basicConfig(level=1)
    logger = logging.getLogger('xxxx')
    file_handler = TimedRotatingFileHandler('text.log', when='S', backupCount=5)
    # 从TimedRotatingFileHandler点进去看源码,
    # 判断日志文件是否过期需要备份的方法为doRollover,
    # 找到备份文件命名的方法self.rotation_filename,
    # 点进去发现如果提供self.namer方法可以自定义备份文件名称,
    # 故此提供一个namer方法就可以自定义备份文件名称了
    file_handler.namer = log_file_namer
    logger.addHandler(file_handler)
    for _ in range(10):
        time.sleep(1)
        logger.info(f'{_}', hhh)

 

标签:logging,name,自定义,python,namer,split,file,log
From: https://www.cnblogs.com/shulongshuyue/p/18284827

相关文章

  • L1-009 N个数求和 python
    python实现:需要考虑很多情况:如果只输入一个数:分子/分母是否有商,是否需要约分,如:8/3,-8/3,0/3。如果输入多个数:通分后分子>0,<0还是=0,分子/分母是否有商,是否需要约分。num=int(input())s=input()ifnum==1:fenzi=int(s.split("/")[0])fenmu=int(s.split("/")[1])......
  • Python酷库之旅-第三方库Pandas(001)
    目录一、Pandas库的由来1、背景与起源1-1、开发背景1-2、起源时间2、名称由来3、发展历程4、功能与特点4-1、数据结构4-2、数据处理能力5、影响与地位5-1、数据分析“三剑客”之一5-2、社区支持二、Pandas库的应用场景1、数据分析2、数据清洗3、数据可视化4、......
  • 2024 年亚太杯 APMCM 数学建模竞赛 B题 洪水灾害的数据分析与预测 详细思路+matlab代
    比赛期间24小时内半价,思路会结合chatgpt-4,都是个人比赛思路,可能不是很好,但是24年所有数学建模思路都会发布到这一个专栏内,只需订阅一次,感谢大家的一直支持!!!B题洪水灾害的数据分析与预测洪水是暴雨、急剧融冰化雪、风暴潮等自然因素引起的江河湖泊水量迅速增加,或者水位迅猛......
  • Python基础语法(与C++对比)(持续更新ing)
    代码块Python在统一缩进体系内,为同一代码块C++{...}内部的为同一代码块注释Python单行注释:#...多行注释:'''...'''C++单行注释://...多行注释:/*...*/数据类型1.Python数据类型    Python中支持数字之间使用下划线'_'分割数字,旨在查看方便    ......
  • Python学习笔记28:进阶篇(十七)常见标准库使用之质量控制中的代码质量与风格第二部分
    前言本文是根据python官方教程中标准库模块的介绍,自己查询资料并整理,编写代码示例做出的学习笔记。根据模块知识,一次讲解单个或者多个模块的内容。教程链接:https://docs.python.org/zh-cn/3/tutorial/index.html质量控制质量控制(QualityControl,QC),主要关注于提高......
  • 【python爬虫实战】进阶天气虫虫(过程复盘 & 心得分享)
    程序设计过程里的一些心得:0.规模较大的程序,往往都是以更小的功能块搭建起来的。如此,为了提升总体程序的构建效率,笔者发现分“两步走”会比较高效:    A.遇到需要反复调试的功能块,可先在另一程序中逐一单独测试某一功能块(这有助于突出模块本身的细节问题)   ......
  • 2024 年第十四届 APMCM 亚太杯 数学建模 A题 飞行器外形的优化问题 详细代码+思路+mat
     比赛期间24小时内半价,思路会结合chatgpt-4,都是个人比赛思路,可能不是很好,但是24年所有数学建模思路都会发布到这一个专栏内,只需订阅一次,感谢大家的一直支持!!!A题飞行器外形的优化问题飞行器是在大气层内或大气层外空间飞行的器械。飞行器可以分为:航空器、航天器、火箭和导......
  • 2024年亚太杯数学建模竞赛 APMCM C题 基于量子计算的物流配送问 详细思路+matlab代码+
     比赛期间24小时内半价,思路会结合chatgpt-4,都是个人比赛思路,可能不是很好,但是24年所有数学建模思路都会发布到这一个专栏内,只需订阅一次,感谢大家的一直支持!!!        随着电子商务的迅猛发展,电商平台对物流配送的需求日益增长。为了确保货物能够按时、高效地送达消费......
  • Python分支
    一、顺序结构    顺序结构是计算机程序中的一种基本的控制结构,它指示计算机按照代码的顺序依次执行每一条语句。这种结构下,程序从第一条语句开始执行,然后按照顺序依次执行下一条语句,直到执行完所有语句或遇到其他控制结构为止。    顺序结构的特点是简单直观......
  • Python基于PyQt5和卷积神经网络分类模型(ResNet50分类算法)实现生活垃圾分类系统GUI界
    说明:这是一个机器学习实战项目(附带数据+代码+文档+视频讲解),如需数据+代码+文档+视频讲解可以直接到文章最后获取。1.项目背景在当今社会,随着人们对环境保护意识的增强以及科技的快速发展,智能化的垃圾分类系统成为了一个热门的研究方向。结合深度学习技术,尤其是先进的图像识......