django - 如何检查 Django 对数据库的请求?
问题描述
我有一个在 EC2 实例上运行的管理命令,它在尝试执行 ORM 查询时失败,如下所示:
File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py", line 53, in __iter__
results = compiler.execute_sql(chunked_fetch=self.chunked_fetch)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/sql/compiler.py", line 899, in execute_sql
raise original_exception
OperationalError: SSL connection has been closed unexpectedly
django-admin shell_plus
我可以从同一个实例上很好地连接到同一个数据库。
为了诊断这一点,我想检查 Django 在每种情况下发出的连接请求的参数,看看有什么不同,但是在浏览了 Django 源代码之后,似乎最好问一下如何而不是迷失在几个小时的杂草:)
也欢迎使用其他诊断策略!
解决方案
根据有关记录数据库查询的文档,您应该查看数据库日志文件:
此日志不包括框架级初始化(例如 SET TIMEZONE)或事务管理查询(例如 BEGIN、COMMIT 和 ROLLBACK)。如果您希望查看所有数据库查询,请打开数据库中的查询日志记录。
推荐阅读
- opencv - 如何添加 Keras 层来裁剪图像?
- django - 无法将表单字段的选择限制为特定用户
- c++-cli - 测试以检测 C++/CLI 中的模板类型是托管还是非托管
- python - 我如何从 dict 值和元组列表中获取每个元素并从中生成一个元组
- python - 为什么这个查找无序列表的最小值和最大值的函数在某些情况下不起作用?
- version-control - VCS 窗口中缺少“忽略”选项
- angular-material-stepper - 如何在单击“下一步”时拨打电话并决定是否继续使用 CDKStepper?
- python - 在列中搜索 str 并创建新的项目列表
- ruby-on-rails - 如何根据数据库中的记录创建具有最少位数的 url 链接缩短 slug
- python-3.x - 从列表中删除一定百分比的元素,同时保留列表的结构完整性