我有使用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)。所以我手动添加了导入日志工作。提前感谢任何指示。
答案 0 :(得分:3)
因为默认日志级别为WARNING
且logging.info()
的级别低于此级别。请参阅解释here和docs。
要做你想做的事你可以试试这个:
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')
输出:
睾丸中