標籤:
除了使用 logging 模組中的 basicConfig 方法配置日誌, Python 的 logging.config 模組中, dictConfig 和 fileConfig 方法分別支援通過字典和檔案的方式配置 Logger、Handler 和 Formatter。下面用一個例子來簡單地說明如何使用檔案配置日誌,更多詳細的用法參考:https://docs.python.org/2/library/logging.config.html
logging.conf
##########################################################################################[loggers]keys=root,log1[logger_root]level=DEBUGhandlers=hand01,hand02[logger_log1]handlers=hand02qualname=log1propagate=0##########################################################################################[handlers]keys=hand01,hand02[handler_hand01]class=FileHandlerlevel=DEBUGformatter=form01args=(‘myapp.log‘, ‘a‘)[handler_hand02]class=StreamHandlerlevel=DEBUGformatter=form01args=(sys.stdout,)##########################################################################################[formatters]keys=form01[formatter_form01]format=%(asctime)s [%(threadName)s] (%(filename)s:%(lineno)d) %(levelname)s - %(message)sdatefmt=%Y-%m-%d %H:%M:%S
logging_config_demo.py
import loggingimport logging.configlogging.config.fileConfig("logging.conf")log1 = logging.getLogger("log1")log1.debug(‘This is a debug message‘)log1.info(‘This is an info message‘)log1.warning(‘This is a warning message‘)
Python(2.7.6) 標準日誌模組 - Logging Configuration