Python 學習筆記: Logging 模組
阿新 • • 發佈:2018-11-22
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 message2018-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後, 高於它的級別的資訊都能顯示。低於它的級別資訊被過濾掉了。