python-logging

  Logging是python自带的模块,这个模块支持输出不同级别的日志,可以输出到控制台和写入文件,支持TCP、HTTP、GET/POST、SMTP、Socket等协议,将日志信息发送到网络等等。

        Logging提供5个等级的输出,CRITICAL > ERROR > WARNING > INFO > DEBUG > NOTSET,如果把looger的级别设置为INFO, 那么小于INFO级别的日志都不输出, 大于等于INFO级别的日志都输出

        logging库提供了多个组件:Logger、Handler、Filter、Formatter:

                Logger      对象提供应用程序可直接使用的接口,供应用代码使用;
                Handler     发送日志到适当的目的地;
                Filter          提供了过滤日志信息的方法,控制输出; 
                Formatter  指定日志输出和显示的具体格式。
demo:

import logging

logging.basicConfig(level=logging.INFO,
                    format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',
                    datefmt='%a, %d %b %Y %H:%M:%S',
                    filename='./test.log',
                    filemode='w')

console = logging.StreamHandler()                   # 定义console handler
console.setLevel(logging.INFO)                  # 定义该handler级别
formatter = logging.Formatter('%(message)s')  #定义该handler格式
console.setFormatter(formatter)

logging.getLogger().addHandler(console)

logging.debug('debug message')
logging.info('info message')
logging.warning('warning message')
logging.error('error message')
logging.critical('critical message')
原文地址:https://www.cnblogs.com/rnanprince/p/10851259.html