• python之logging模块


    这个模块是打印日志使用的,封装自动化测试环境时用来输入log日志使用

    import logging
    from logging import handlers
    class Logger(object):
    level_relations = {
    'debug': logging.DEBUG,
    'info': logging.INFO,
    'warning': logging.WARNING,
    'error': logging.ERROR,
    'crit': logging.CRITICAL
    }

    def __init__(self,filename,level='debug',
    when='s',
    back_count=3,
    fmt='%(asctime)s - %(pathname)s[line:%(lineno)d] - %(levelname)s: %(message)s'
    ):
    self.logger = logging.getLogger(filename)
    #先创建一个logger对象,相当于这个办公室
    format_str = logging.Formatter(fmt)
    #指定日志格式,我也不知道啥意思,fmt写法是我搬运来的
    self.logger.setLevel(self.level_relations.get(level))
    #设置日志级别
    sh = logging.StreamHandler()
    #创建一个控制台输出的处理器
    sh.setFormatter(format_str)
    #设置处理器的日志格式
    th = handlers.TimedRotatingFileHandler(filename=filename, when=when, backupCount=back_count, encoding='utf-8')
    #指定时间间隔自动生成文件的处理器
    #backupCount是备份文件的个数,如果超过这个个数,就会自动删除
    #when是时间间隔,单位有S(秒)M(分)H(小时)D(天)W(每星期,inerval==0是代表星期一)midnight(每天凌晨)
    th.setFormatter(format_str)
    #设置处理器的日志个事
    self.logger.addHandler(sh)
    self.logger.addHandler(th)
    #把两个handler加入容器头,相当于把工作人员培训完可以上岗了

    if __name__ == '__main__':
    log = Logger('test.log')



  • 相关阅读:
    CSS div 塌陷问题
    jquery 选择器包含特殊字符
    ASP.NET Core Action 读取流
    SQL 列拼接使用
    bootstrap div 固定
    Jquery 操作HTML5自定义属性data-*
    Vue 页面加载闪现代码问题
    iframe 加载完成事件
    closest
    【开发者的精进】 数据驱动下的程序设计
  • 原文地址:https://www.cnblogs.com/mpp0905/p/8609672.html
Copyright © 2020-2023  润新知