gpt4 book ai didi

python - 为什么我不能更改 python 记录器的级别?

转载 作者:行者123 更新时间:2023-12-04 10:23:26 25 4
gpt4 key购买 nike

我正在尝试更改 python 记录器的日志级别。但它似乎不起作用:

import logging

#50 CRITICAL
#40 ERROR
#30 WARNING <-- default
#20 INFO
#10 DEBUG
# 0 NOTSET

logger = logging.getLogger('a')
logger.setLevel(logging.DEBUG)
print('log level', logger.getEffectiveLevel())
logger.debug('Debug') # 10
logger.info('Info') # 20
logger.warning('Warning') # 30
logger.error('Error') # 40

输出是:

log level 10
Warning
Error

但应该是:

log level 10
Debug
Info
Warning
Error

这是为什么,我做错了什么?

最佳答案

问题是默认的日志处理程序只处理默认的日志级别。您必须添加一个执行实际日志记录的日志记录处理程序。如果您只需要控制台日志记录,您可以使用:

logger = logging.getLogger('a')
logger.addHandler(logging.StreamHandler())
logger.setLevel(logging.DEBUG)
...

这让你:

log level 10
Debug
Info
Warning
Error

logging.basicConfig() 添加具有一些基本格式的处理程序,但通常您会定义自己的日志记录格式。

关于python - 为什么我不能更改 python 记录器的级别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60725547/

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