我试图以这种方式在Python 3中添加日志记录处理程序:
$ python3
Python 3.5.2 (default, Sep 14 2017, 22:51:06)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import logging
>>>
>>> logger = logging.getLogger()
>>> handler = logging.StreamHandler()
>>> handler.setLevel(logging.INFO)
>>> logger.addHandler(handler)
>>>
>>> logging.info("my info")
>>> logging.warning("my warning")
my warning
我将loglevel指定为INFO
。为什么logging.info("my info")
什么都没输出?
答案 0 :(得分:6)
因为您need也设置logger
杠杆。
import logging
logger = logging.getLogger()
# here
logger.setLevel(logging.INFO)
handler = logging.StreamHandler()
handler.setLevel(logging.INFO)
logger.addHandler(handler)
输出:
>>> logging.info("my info")
my info
>>> logging.warning("my warning")
my warning
答案 1 :(得分:2)
记录器具有级别和处理程序。 default level会发出警告,因此您的信息会被忽略。
要让您的示例正常运行,请添加logger.setLevel(logging.INFO)
。