log小结

先看一段代码:

import logging
from logging.handlers import TimedRotatingFileHandler

def init_logger(port):
    logFilePath = 'logs/test'+str(port)+'.log'
    logger = logging.getLogger() 
    logger.setLevel(logging.INFO) #设置log级别,INFO(包含)以上都会报警
    handler = TimedRotatingFileHandler(logFilePath,
                                       when = 'midnight',
                                       interval = 1,
                                       backupCount=0)
    #设置记录格式,按照 [当前时间-等级-信息] 记录
    formatter = logging.Formatter('[%(asctime)s-%(levelname)s - %(message)s]')
    handler.setFormatter(formatter)
    logger.addHandler(handler)
    return logger

该代码的功能是在logs/目录下按天记录日志,并在每天凌晨00:00新建新的日志文件。假设传入的port为10086,则日志命名规则为:test10086.log.xxxx-xx-xx,其中xxxx-xx-xx年-月-日

TimedRotatingFileHandler

  • TimedRotatingFileHandler 可以理解为是一种可设置固定时间间隔的日志记录类,它被集成在 logging 中,直接调用进行实例化和配置就可以使用
  • TimedRotatingFileHandler 的构造函数为:
    TimedRotatingFileHandler( filename , when , interval , backupCount)
    # filename :输出日志的文件名称前缀,比如说 test.log 这样的就是日志文件名前缀
    # when :一个字符串,定义了日志切分的间隔时间单位,这是一个枚举类,可选参数如下:
      # "S":Second 秒
      #  "M":Minutes 分钟
      # "H":Hour 小时
      # "D":Days 天
      # "W":Week day(0 = Monday)
      # "midnight":Roll over at midnight
    # interval:间隔时间单位的个数,指等待多少个 when 的时间后 Logger 会自动重建日志
    #          继续进行记录。如果创建的文件和已有文件存在重名的情况,则会对历史的文件
    #          进行覆盖操作。
    #  backupCount :保留日志的文件个数,默认参数为0,表示保留所有日志。
    #               如果设置为 N(正整数),则只保留最多N个最新的日志文件。
    
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 10,792评论 0 9
  • 一、tracker.conf # 这个配置文件是否无效,false表示有效# is this config fil...
    依然饭太稀阅读 7,100评论 0 2
  • 写在前面的话 代码中的# > 表示的是输出结果 输入 使用input()函数 用法 注意input函数输出的均是字...
    FlyingLittlePG阅读 8,127评论 0 9
  • @(python) 目录 武沛齐老师博客 paramiko模块用法:https://www.cnblogs.com...
    CaiGuangyin阅读 4,270评论 0 2
  • 在现实生活中,记录日志非常重要。银行转账时会有转账记录;飞机飞行过程中,会有黑盒子(飞行数据记录器)记录飞行过程中...
    chliar阅读 4,179评论 1 0