我有一个这样的文件结构:util/└── utilA.pysrc/└── sublevel └── moduleB.py在moduleB我用来from util.utilA import *从 util 中导入函数。在内部moduleB,我想禁用logging.info()util 中的 ,但以下两行不起作用,如果我运行,moduleB我仍然会看到从以下函数生成的日志记录utilA:logging.getLogger('util.utilA').propagate = Falselogging.getLogger('util.utilA').setLevel(logging.ERROR)我也试过了logging.getLogger('util'),logging.getLogger('utilA')但都没有用。logging.getLogger('pdfminer')...让我感到困惑的一件事是,我对另一个模块pdfminer使用了相同的两行 ( ) ,它成功地禁用了该模块的日志记录。它只是不适用于我的本地utilA.有人能帮忙吗?谢谢你!
1 回答
慕姐4208626
TA贡献1852条经验 获得超7个赞
日志记录基于您在获取记录器时使用的名称,而不是执行日志记录的模块的名称。特别是,logging.info()
使用根记录器。如果要调整给定模块的日志记录,请确保它没有使用根记录器并使用其getLogger("somename")
记录器名称。
添加回答
举报
0/150
提交
取消