设置为DEBUG时,为什么我的python记录器仍然从较高的记录级别打印出消息?

时间:2018-10-01 17:03:06

标签: python debugging logging

我将python记录器设置为要调试,但它仍会打印出信息消息:

import logging
from logging.config import fileConfig
fileConfig('./log/logging_config_serial.ini')
logger = logging.getLogger()

logger.debug("debug")
2018-10-01 09:58:43,161 root         DEBUG    debug
logger.info("info")
2018-10-01 09:58:50,997 root         INFO     info

logger.getEffectiveLevel()
Out[12]: 10

好像它在输出上设置为调试级别(10 = DEBUG,20 = INFO)

这是我的配置文件:

[loggers]
keys=root

[handlers]
keys=stream_handler,fileHandler

[formatters]
keys=formatter

[logger_root]
level=DEBUG
handlers=stream_handler,fileHandler

[handler_stream_handler]
class=StreamHandler
level=DEBUG
formatter=formatter
args=(sys.stderr,)

[handler_fileHandler]
class=FileHandler
level=DEBUG
formatter=formatter
args=("./log/l5e5_get_header_info_serial_R3.log",)

[formatter_formatter]
format=%(asctime)s %(name)-12s %(levelname)-8s %(message)s

1 个答案:

答案 0 :(得分:1)

DEBUG是最低级别,因此默认情况下还将包括所有更高级别(因为默认情况下,如果您正在查看DEBUG,则还希望看到警告,信息和错误)