2015-10-30 115 views
1

我想即時更改python日誌記錄文件。我能做到這一點通過消除現有的處理程序,然後添加一個新問題:標識python日誌記錄處理程序類型

for hdlr in log.handlers: # remove all old handlers 
    log.removeHandler(hdlr) 
log.addHandler(fileh) 

但是,如果我的記錄有多個處理程序,像流處理器,旋轉的文件處理程序,我想刪除

回答

2

想通了,我們可以找到類文件流的去除選擇性處理程序:

for handler in logger: 
    if handler.__class__.__name__ == 'FileHandler': 
    logger.removeHandler(handler) 
0

記錄不迭代。它必須是logger.handlers。

for handler in logger.handlers: 
    if handler.__class__.__name__ == 'FileHandler': 
    logger.removeHandler(handler) 
相關問題