PyDev控制台不打印所有级别的日志记录

时间:2012-10-24 20:48:16

标签: python eclipse logging pydev

我有使用python的平均经验,顺便说一下我刚安装了eclipse和pydev。奇怪的是,日志模块的行为看起来很奇怪。

import datetime
import logging

print datetime.date.today()
print logging
logging.info("test")
print logging.info("test2")

--------
OUTPUT::
--------
2012-10-25
<module 'logging' from '/usr/lib/python2.7/logging/__init__.pyc'>
None

为什么logging.info不起作用的任何线索?

btw不确定这是否相关,但是在pydev安装后导入日志记录本身无法正常工作。然后我检查了python解释器设置和日志模块不在强制内置列表中(Windows-&gt; preference-&gt; Pydev-&gt; Interpreter(python) - &gt; Forced Builtins)。所以我手动添加了导入日志工作。提前感谢任何指示。

3 个答案:

答案 0 :(得分:3)

因为默认日志级别为WARNINGlogging.info()的级别低于此级别。请参阅解释heredocs

要做你想做的事你可以试试这个:

logger = logging.getLogger('name_of_your_logger')
logger.setLevel(logging.INFO)
logger.info("Should get logged")

答案 1 :(得分:0)

您可以在第一个日志记录语句之前使用setLevel更改默认级别。

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

答案 2 :(得分:0)

如果想要写入stdout:

,请尝试此操作
import sys
import logging

logger = logging.getLogger()
handler = logging.StreamHandler(sys.stdout)
handler.setLevel(logging.DEBUG)
logger.addHandler(handler)
logger.setLevel(logging.DEBUG)
logger.info('teste')

输出:

  

睾丸中