2014-09-24 35 views
2

獲取文件名我有以下代碼如何從一個Python記錄器

job_logger = logging.getLogger("abc") 
job_handler = logging.FileHandler(filename) 
job_logger.addHandler(job_handler) 
print job_logger.something 

我想知道從job_logger對象的文件名。有任何想法嗎?

回答

4

假設job_logger對象現在只有一個處理程序。

>>> handler = job_logger.handlers[0] 
>>> filename = handler.baseFilename 
>>> print(filename) 
'/tmp/test_logging_file' 

而當有多個處理程序,設計你的邏輯,讓他們全部或得到最後一個。

+0

謝謝你! 認爲這將是唯一的識別它然後 – hyades 2014-09-24 12:49:08

+0

@hyades我很樂意提供幫助。 – starrify 2014-09-24 12:53:34

+0

在我的程序的不同環境中,這對我來說並不適用。什麼工作是:my_logger.root.handlers [0] .baseFilename – 2018-02-09 12:41:13