美文网首页测试Inbox
Python之log日志

Python之log日志

作者: 五娃儿 | 来源:发表于2017-12-20 16:55 被阅读41次

    记录下python操作log的代码,方便日后使用

    代码如下:

    # __author__ ='dbl'
    # -*- coding: utf-8 -*-
    
    import logging, time, os
    
    
    class MyLogging:
        '''
        logging的初始化操作,以类封装的形式进行
        '''
    
        def __init__(self):
            '''
            '''
            timestr = time.strftime('%Y%m%d%H%M%S', time.localtime(time.time()))
            lib_path = os.path.abspath(os.path.join(os.path.dirname(__file__), '../logs'))
            filename = lib_path + '/' + timestr + '.log'  # 日志文件的地址
            self.logger = logging.getLogger()  # 定义对应的程序模块名name,默认为root
            self.logger.setLevel(logging.INFO)  # 必须设置,这里如果不显示设置,默认过滤掉warning之前的所有级别的信息
    
            sh = logging.StreamHandler()  # 日志输出到屏幕控制台
            sh.setLevel(logging.ERROR)  # 设置日志等级
    
            fh = logging.FileHandler(filename=filename)  # 向文件filename输出日志信息
            fh.setLevel(logging.INFO)  # 设置日志等级
    
            # 设置格式对象
            formatter = logging.Formatter(
                "%(asctime)s %(filename)s[line:%(lineno)d]%(levelname)s - %(message)s")  # 定义日志输出格式
    
            # 设置handler的格式对象
            sh.setFormatter(formatter)
            fh.setFormatter(formatter)
    
            # 将handler增加到logger中
            self.logger.addHandler(sh)
            self.logger.addHandler(fh)
    
    
    mylogger = MyLogging().logger
    
    if __name__ == "__main__":
        mylogger = MyLogging().logger
    
        mylogger.debug("debug")
        mylogger.info("info")
        mylogger.warning("warning")
        mylogger.error("error")
        mylogger.critical("critical")
    
    

    相关文章

      网友评论

        本文标题:Python之log日志

        本文链接:https://www.haomeiwen.com/subject/moogwxtx.html