Python模塊之Logging(五)——在配置文件中爲Logger配置多個handler

使用樣例

讀取配置文件:

logging.config.fileConfig("log.conf")    # 採用配置文件  

創建logger:

logger = logging.getLogger("simpleExample")  

log.conf文件:

[loggers] #loggers列表
keys=root,main

[handlers] #handlers列表
keys=consoleHandler,fileHandler

[formatters] #formatters列表
keys=fmt

[logger_root] #root logger
level=DEBUG
handlers=consoleHandler,fileHandler #將root logger的日誌信息輸出到文件和控制檯

[logger_main] #main logger
level=DEBUG
qualname=main
handlers=fileHandler

[handler_consoleHandler] #控制檯handler
class=StreamHandler
level=DEBUG
formatter=fmt
args=(sys.stdout,)

[handler_fileHandler] #循環日誌文件
class=logging.handlers.RotatingFileHandler
level=DEBUG
formatter=fmt
args=('tst.log','a',20000,5,) #參數是RotatingFileHandler的__init__()的參數

[formatter_fmt] #格式
format=%(asctime)s - %(name)s - %(levelname)s - %(message)s
datefmt=

上述文件中,用逗號將handler隔開就可以將日誌輸出到多個目的地:

handlers=consoleHandler,fileHandler #將root logger的日誌信息輸出到文件和控制檯
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章