我有一個(gè)這樣的文件結(jié)構(gòu):util/└── utilA.pysrc/└── sublevel └── moduleB.py在moduleB我用來from util.utilA import *從 util 中導(dǎo)入函數(shù)。在內(nèi)部moduleB,我想禁用logging.info()util 中的 ,但以下兩行不起作用,如果我運(yùn)行,moduleB我仍然會(huì)看到從以下函數(shù)生成的日志記錄utilA:logging.getLogger('util.utilA').propagate = Falselogging.getLogger('util.utilA').setLevel(logging.ERROR)我也試過了logging.getLogger('util'),logging.getLogger('utilA')但都沒有用。logging.getLogger('pdfminer')...讓我感到困惑的一件事是,我對(duì)另一個(gè)模塊pdfminer使用了相同的兩行 ( ) ,它成功地禁用了該模塊的日志記錄。它只是不適用于我的本地utilA.有人能幫忙嗎?謝謝你!
1 回答

慕姐4208626
TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超7個(gè)贊
日志記錄基于您在獲取記錄器時(shí)使用的名稱,而不是執(zhí)行日志記錄的模塊的名稱。特別是,logging.info()
使用根記錄器。如果要調(diào)整給定模塊的日志記錄,請(qǐng)確保它沒有使用根記錄器并使用其getLogger("somename")
記錄器名稱。
添加回答
舉報(bào)
0/150
提交
取消