【发布时间】:2016-05-21 09:15:22
【问题描述】:
我正在使用 Python 日志记录模块,并希望禁用由我导入的第三方模块打印的日志消息。例如,我正在使用如下内容:
logger = logging.getLogger()
logger.setLevel(level=logging.DEBUG)
fh = logging.StreamHandler()
fh_formatter = logging.Formatter('%(asctime)s %(levelname)s %(lineno)d:%(filename)s(%(process)d) - %(message)s')
fh.setFormatter(fh_formatter)
logger.addHandler(fh)
这会在我执行 logger.debug("my message!") 时打印出我的调试消息,但它也会打印出来自我导入的任何模块的调试消息(例如请求和许多其他内容)。
我只想查看我感兴趣的模块的日志消息。是否可以让日志模块执行此操作?
理想情况下,我希望能够告诉记录器打印来自“ModuleX,ModuleY”的消息并忽略所有其他消息。
我查看了以下内容,但我不想在每次调用导入函数之前都禁用/启用日志记录: logging - how to ignore imported module logs?
【问题讨论】: