gpt4 book ai didi

python - 设置日志记录级别

转载 作者:IT老高 更新时间:2023-10-28 22:18:12 26 4
gpt4 key购买 nike

我正在尝试使用标准库来调试我的代码:

这很好用:

import logging
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)
logger.info('message')

我无法让较低级别的记录器工作:

logging.basicConfig(level=logging.DEBUG)
logger = logging.getLogger(__name__)
logger.info('message')

logging.basicConfig(level=logging.DEBUG)
logger = logging.getLogger(__name__)
logger.debug('message')

我没有得到任何回应。

最佳答案

什么 Python 版本?这在 3.4 中对我有用。但请注意 basicConfig()如果已经设置,则不会影响根处理程序:

This function does nothing if the root logger already has handlers configured for it.

要在 root 上显式设置级别,请执行 logging.getLogger().setLevel(logging.DEBUG)。但请确保您事先已调用 basicConfig(),以便根记录器最初进行一些设置。即:

import logging
logging.basicConfig()
logging.getLogger().setLevel(logging.DEBUG)
logging.getLogger('foo').debug('bah')
logging.getLogger().setLevel(logging.INFO)
logging.getLogger('foo').debug('bah')

还请注意,“记录器”和它们的“处理程序”都具有不同的独立日志级别。因此,如果您之前在 Python 脚本中显式加载了一些复杂的记录器配置,并且与根记录器的处理程序混淆,那么这可能会产生影响,并且只需使用 logging 更改记录器的日志级别。 getLogger().setLevel(..) 可能不起作用。这是因为附加的处理程序可能具有独立设置的日志级别。这种情况不太可能发生,您通常不必担心。

关于python - 设置日志记录级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38537905/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com