Python日志记录无法更改根记录器的日志级别

时间:2020-07-29 21:16:07

标签: python python-3.x logging

我正在尝试更改根记录器的日志级别。当用getEffectiveLevel()查询时,它似乎已更改,但实际上并没有记录与更改前不同的记录。

例如:

>>> import logging
>>> root_logger = logging.getLogger()
>>> root_logger.getEffectiveLevel()
30
>>> root_logger.warning('test')
test
>>> root_logger.info('test')
>>> root_logger.setLevel(logging.DEBUG)
>>> root_logger.getEffectiveLevel()
10
>>> root_logger.warning('test')
test
>>> root_logger.info('test')
>>> root_logger.debug('test')

这是为什么?我是否还有其他需要做的事情?我可以设置级别并使用getEffectiveLevel来查看它,这使我感到困惑,但是它根本不会改变行为。

我正在Python 3.7.3上使用内置的日志记录模块(版本0.5.1.2)。

1 个答案:

答案 0 :(得分:1)

您尚未为记录器(或根本没有记录系统)配置任何处理程序。

这意味着,基于the code herelogging默认为this最终记录记录器,它是阈值为WARNING的stderr记录器,因此,它不处理那些调试消息。