Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么这个python代码会过滤掉低于INFO的日志?_Python_Logging - Fatal编程技术网

为什么这个python代码会过滤掉低于INFO的日志?

为什么这个python代码会过滤掉低于INFO的日志?,python,logging,Python,Logging,我只得到了最后三个日志,它们等于或高于WARN。有人能告诉我为什么吗?您设置的是处理器的级别,而不是记录器的级别。根日志记录器的级别仍然设置为根日志记录器的默认警告级别,因此它不会向处理程序传递任何比警告级别低的消息。您设置的是处理程序的级别,而不是日志记录器的级别。根日志记录器的级别仍然设置为根日志记录器的默认警告级别,因此它不会向处理程序传递任何比警告级别低的消息。正如@user2357112已经提到的,为根日志记录器设置级别 import logging # logging.basicCo

我只得到了最后三个日志,它们等于或高于WARN。有人能告诉我为什么吗?

您设置的是处理器的级别,而不是记录器的级别。根日志记录器的级别仍然设置为根日志记录器的默认警告级别,因此它不会向处理程序传递任何比警告级别低的消息。

您设置的是处理程序的级别,而不是日志记录器的级别。根日志记录器的级别仍然设置为根日志记录器的默认警告级别,因此它不会向处理程序传递任何比警告级别低的消息。

正如@user2357112已经提到的,为根日志记录器设置级别

import logging
# logging.basicConfig(level=logging.DEBUG)
consoleHandler = logging.StreamHandler()
consoleHandler.setLevel(logging.DEBUG)
consoleHandler.setFormatter(logging.Formatter("%(asctime)s; %(levelname)s; %(message)s"))
logging.getLogger().addHandler(consoleHandler)

logging.debug('debug')
logging.info('test')
logging.warn('warn')
logging.error('error')
logging.fatal('fatal')
您的代码如下所示:

logging.getLogger().setLevel(logging.DEBUG)

正如@user2357112已经提到的,为根记录器设置级别

import logging
# logging.basicConfig(level=logging.DEBUG)
consoleHandler = logging.StreamHandler()
consoleHandler.setLevel(logging.DEBUG)
consoleHandler.setFormatter(logging.Formatter("%(asctime)s; %(levelname)s; %(message)s"))
logging.getLogger().addHandler(consoleHandler)

logging.debug('debug')
logging.info('test')
logging.warn('warn')
logging.error('error')
logging.fatal('fatal')
您的代码如下所示:

logging.getLogger().setLevel(logging.DEBUG)