在Django中监视数据库请求,与行号绑定

问题描述 投票:2回答:2

我们的项目中发生了一些非常奇怪的无关DB命中。有没有办法监控请求的来源,可能是通过行号? SQL打印中间件有所帮助,但我们已经到处查看可能会生成这些类型的请求但无法找到源。

如果以上是不可能的,那么关于缩小源代码的任何指示都将非常感激。

django django-database
2个回答
4
投票

要查找执行查询的代码,可以安装django-debug-toolbar以确定正在执行的命令以及它们正在操作的表。

一旦你完成了这个,尝试挂钩适当的Django signals为那些模型,并使用printassert来缩小代码。

我确定有一个更好的方法来做一些这个(一个python调试器?)但这是我想到的第一件事,也许我最终会做自己的事情。


0
投票

如果你想跟踪SQL查询的性能优化和调试目的,以及如何监控Django中的查询调用,这个博客将帮助你

Tracking SQL Queries for a Request using Django

© www.soinside.com 2019 - 2024. All rights reserved.