zoukankan      html  css  js  c++  java
  • logging模块使用

    # Aythor:Tom

    import logging
    from logging import handlers
    class IgnoreBackupLogFilter(logging.Filter):
    """忽略带db backup 的日志"""
    def filter(self, record): #固定写法
    return "db backup" not in record.getMessage()

    #1.生成 logger对象

    #1.1 把filter对象添加到logger中翻
    logger = logging.getLogger('web')
    logger.setLevel(logging.INFO)

    logger.addFilter(IgnoreBackupLogFilter())



    #2.生成handler对象
    ch = logging.StreamHandler()
    #按文件大小截取
    #fh = handlers.RotatingFileHandler('web.log',maxBytes=10,backupCount=3)

    #按时间节点截取
    fh = handlers.TimedRotatingFileHandler(filename='web.log',when='S',interval=5,backupCount=3)

    #2.1把handler对象绑定到logger
    logger.addHandler(ch)
    logger.addHandler(fh)


    #3.生成formatter对象
    file_formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
    console_formatter = logging.Formatter('%(asctime)s - %(name)s - %(lineno)s- %(module)s - %(message)s')

    #3.1 把formatter对象 绑定到handler对象 #全局的默认级别是Warning
    ch.setFormatter(file_formatter)
    fh.setFormatter(console_formatter)


    logger.debug('test log')
    logger.warning('test log2')
    logger.debug('test log db backup')
  • 相关阅读:
    python基础(二)
    python基础(一)
    SQL的四种连接-左外连接、右外连接、内连接、全连接
    mysql常用操作
    jenkins邮件通知功能
    mysql常用命令
    SQL优化法则小记
    架构漫谈
    今日头条的成功史
    python连接mysql数据库简单例子
  • 原文地址:https://www.cnblogs.com/tyh-tesla/p/8506202.html
Copyright © 2011-2022 走看看