我有以下配置(基于this):
'loggers': {
'django': {
'handlers': ['console'],
'level': 'INFO',
},
'root': {
'handlers': ['console'],
'level': 'INFO',
},
},
当我像这样运行我的测试时(Django 1.8.4)
./manage.py test
我在自己的代码中从源代码行获得了DEBUG级别的输出,看起来像
import logging
logging.debug("Shouldn't be seen, but is")
该行表示日志消息将转到根记录器,正如我所料:
DEBUG:root:blah: Shouldn't be seen, but is
当测试正在运行时,它说
nosetests --verbosity=1
如果我说
./manage.py test --verbosity=0
nosetests消息消失了,但调试日志记录没有消失。
发生了什么事?我的日志配置错了吗?测试是否会干扰? Django的?
我认为正在阅读我的日志配置。我通过在此配置文件中配置该记录器来抑制django.request警告。
如何调试?
(我看过this related post,但没有帮助。)
答案 0 :(得分:3)
您的记录器配置未正确写入。 'root'配置超出'loggers'部分,如下所示:
'loggers': {
'django': {
'handlers': ['console'],
'level': 'INFO',
},
},
'root': {
'handlers': ['console'],
'level': 'INFO',
}
设置它应该有效。