zoukankan      html  css  js  c++  java
  • python的log模块

    '''
    
    日志模块,可用类/实例调用
    例:my_logger = MyLogger.create_logger
        my_logger.info("输出级别为info的日志信息)
    '''
    
    import logging
    from logging.handlers import TimedRotatingFileHandler
    import time
    
    
    class MyLogger():
        @staticmethod  # 静态方法,使用时可用类/实例调用,只在名义上归类管理
        def create_logger():
    
            # 获取日志收集器,并设置名称为my_logger(若不设置名字,则为默认日志收集器root)
            my_logger= logging.getLogger("my_logger")
            my_logger.setLevel("DEBUG")  # 收集等级默认为warning
    
            # 创建一个输出到控制台的处理器
            control_hander = logging.StreamHandler()
            control_hander.setLevel("ERROR")  # 设置输出到控制台的处理器的输出等级为ERROR
            my_logger.addHandler(control_hander)  # 添加处理器并绑定在日志收集器上   ,addHandler:增加处理器, removeHandler:删除处理器
    
            # 创建一个处理器,使用时间滚动的文件处理器
            filename = '../Log/'+'mylog'+time.strftime("%Y%m%d")+".txt"
            file_handler = TimedRotatingFileHandler(filename=filename, when='D',interval=1, encoding='utf-8')
            file_handler.setLevel("DEBUG")  # 设置输出到文件的处理器的输出等级为DEBUG
            my_logger.addHandler(file_handler)
    
            # 设置输出到文件与控制台的格式
            formatter = logging.Formatter('%(asctime)s  [%(filename)s-->line:%(lineno)d],%(levelname)s: %(message)s')
            file_handler.setFormatter(formatter)
            control_hander.setFormatter(formatter)
            return my_logger
    
    
    # a = 100
    # # assert a==0
    # #my= MyLogger() #可创建实例调用
    # my_logger = MyLogger.create_logger() # 可直接采用类调用
    # my_logger.debug(a)
    # my_logger.info("info")
    # my_logger.warning("warn")
    # my_logger.error("error")
    # my_logger.critical("critical")

    相关log模块学习链接: https://www.cnblogs.com/miki-peng/p/13416944.html

  • 相关阅读:
    jQuery笔记(1)
    [bzoj 1878][SDOI2009]HH的项链
    [bzoj 1968][Ahoi2005]COMMON 约数研究
    [bzoj 1899][ZJOI2004]lunch 午餐
    [bzoj 1090][SCOI2003]字符串折叠
    CodeForces 1029E div3
    [bzoj 1270][BeijingWc2008]雷涛的小猫
    [bzoj 1260][CQOI 2007]涂色paint
    [AtCoder ARC101D/ABC107D] Median of Medians
    [luogu 1070]道路游戏(NOIP2009T4)
  • 原文地址:https://www.cnblogs.com/byy521/p/15036290.html
Copyright © 2011-2022 走看看