我想在我的django应用程序的视图函数中的不同点输出调试消息。 django-debug-toolbar的文档声称它使用python日志中的构建,但是我找不到更多的信息。我不想登录到文件,而是登录到工具栏上的信息窗格。这个怎么用?如何在Django调试工具栏中使用日志记录?
37
A
回答
43
您只需使用logging module方法,并且DjDT将拦截并将其显示在“记录面板”中。
import logging
logging.debug('Debug Message')
if some_error:
logging.error('Error Message')
8
通常不推荐直接记录到根记录器,如@ jonwd7所述。一般来说,我遵循以下模式:
import logging
logger = logging.getLogger(__name__)
del logging # To prevent accidentally using it
...
logger.debug("Some message")
这使您可以更好地控制哪些日志消息执行和不显示。不幸的是,以这种方式使用它会阻止django调试工具栏捕获任何日志消息,除非您指定特定的日志记录配置。这里有一个最简单的我能想出:所以你不会禁用处理程序连接到根记录器工具栏
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'incremental': True,
'root': {
'level': 'DEBUG',
},
}
设置“增量”和“disable_existing_loggers”都是重要的。你想要做的就是将根记录器的日志级别设置为“DEBUG”。您还可以使用“记录器”条目为特定记录器设置级别。只需省略“处理程序”部分,并设置“传播”:True,以便它们被DjDT处理程序捕获。
0
如果您有一个现有的LOGGING配置字典,并且您不想通过切换到“增量”来搞乱它,那么您需要重新添加DjDT日志作为处理程序,然后将其添加到根记录器的处理程序列表。
from debug_toolbar.panels.logging import collector # needed for handler constructor below
LOGGING = {
# existing options, formatters, loggers, etc
handlers = {
# existing handlers
'djdt_log': {
'level': 'DEBUG',
'class': 'debug_toolbar.panels.logging.ThreadTrackingHandler',
'collector': collector,
},
},
'root': {
'level': 'DEBUG',
'handlers': ['djdt_log'],
},
}
如果有更干净的方法可以做到这一点,我很乐意看到它。
相关问题
- 1. Django调试工具栏日志记录
- 2. 如何在django中禁用南调试日志记录?
- 3. hadoop日志记录工具?
- 4. 如何查看Django调试工具栏?
- 5. 如何安装django调试工具栏?
- 6. 如何做Javascript调试日志记录
- 7. 如何在PostgreSQL JDBC/HikariCP中启用调试日志记录?
- 8. 如何使用Libwebsockets启用调试日志记录?
- 9. 如何使用log4j禁用类的调试日志记录?
- 10. Django调试工具栏安装(Django 1.9)
- 11. 的Django调试工具栏在Heroku的
- 12. 禁用Hiera调试日志记录
- 13. YII日志记录用于调试
- 14. Android:如何使用ProGuard删除SLF4J调试日志记录
- 15. 如何在jenkins上启用调试日志记录?
- 16. 如何在调试时记录matlab中的日志?
- 17. Django日志记录工作间歇
- 18. django日志记录:未创建日志
- 19. 如何在CherryPy中使用自定义日志记录工作?
- 20. EasyMock日志记录调用
- 21. 日志记录subprocess.Popen调用
- 22. Django - 日志记录配置
- 23. 通用日志记录和具体日志(使用NLOG),重复记录
- 24. Django调试工具栏设置
- 25. Django调试工具栏安装问题
- 26. Django的调试工具栏 - Prototypejs版本
- 27. Django调试工具栏不显示SQL
- 28. Django调试工具栏目标?
- 29. C++调试Windows上的日志记录
- 30. Springframework的ResponseBody的调试日志记录
感谢您对根记录器进行详细说明。这是其他答案缺乏的信息。 – jnns 2016-08-15 09:13:59
设置部分帮助我,谢谢! 2016年仍然很好的建议 – Jeff 2016-08-26 23:15:24