Django 慢查询:将 django 过滤语句连接到数据库日志中的慢查询
Posted
技术标签:
【中文标题】Django 慢查询:将 django 过滤语句连接到数据库日志中的慢查询【英文标题】:Django slow queries: Connect django filter statements to slow queries in database logs 【发布时间】:2012-02-28 08:17:47 【问题描述】:如果您尝试诊断 mysql 后端中的慢查询并使用 Django 前端,您如何将后端报告的慢查询与 Django 前端代码中的特定查询集联系起来?
【问题讨论】:
【参考方案1】:我认为除了记录可疑查询集的每个 django 查询之外,您别无选择。
请参阅this answer,了解如何访问给定查询集的实际查询。
【讨论】:
【参考方案2】:如果您安装django-devserver,它将显示正在运行的查询以及在使用 runserver 时它们在您的 shell 中花费的时间。
另一种选择是django-debug-toolbar,它会在您网站的侧面板叠加层中执行相同的操作。
无论哪种方式,您都需要在您的开发环境中对其进行测试。但是,两者都没有真正解决直接将您定位到有问题的查询的问题。他们根据每个请求工作。因此,您必须稍微考虑一下您的哪些视图使用数据库最多和/或处理异常大量的数据,但是通过挑选可能的候选视图并检查时间查询要在这些页面上运行,您应该能够掌握哪些特定查询最差。
【讨论】:
以上是关于Django 慢查询:将 django 过滤语句连接到数据库日志中的慢查询的主要内容,如果未能解决你的问题,请参考以下文章