Python 学习笔记: Logging 模块

Logging 模块

import logging

logger = logging.getLogger()

# 创建一个handler,用于写入日志文件
fh = logging.FileHandler('test.log',encoding='utf-8')
# 再创建一个handler,用于输出到控制台
ch = logging.StreamHandler()

formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

logger.setLevel(logging.DEBUG)

fh.setFormatter(formatter)
ch.setFormatter(formatter)

logger.addHandler(fh) #logger对象可以添加多个fh和ch对象
logger.addHandler(ch)

logger.debug('logger debug message')
logger.info('logger info message============')
logger.warning('logger warning message')
logger.error('logger error message')
logger.critical('logger critical message')

输出如下:

2018-11-22 09:27:22,336 - root - DEBUG - logger debug message
2018-11-22 09:27:22,337 - root - INFO - logger info message============
2018-11-22 09:27:22,337 - root - WARNING - logger warning message
2018-11-22 09:27:22,337 - root - ERROR - logger error message
2018-11-22 09:27:22,337 - root - CRITICAL - logger critical message
注意
logger.setLevel(logging.DEBUG) 是设置记录的级别, 可以单独设置 fh , ch 的级别。
级别上critical>error>warning>info>debug 设置了低级别的level后, 高于它的级别的信息都能显示。低于它的级别信息被过滤掉了。

猜你喜欢

转载自www.cnblogs.com/yuming-python/p/9999137.html