Quiero ver qué consultas se ejecutan en el método de django modelo .save(). Como estoy en un entorno de producción, no puedo usar Django Toolbar para esto.¿Cómo imprimo las consultas ejecutadas por el método django .save()?
6
A
Respuesta
2
Hay 2 maneras:
En Django 1.3 y arriba se puede utilizar el registro que creo que vuelca sus consultas SQL en el registro. https://docs.djangoproject.com/en/dev/topics/logging/
no parece que hay una manera fácil recta hacia adelante sin debug = true. Esto es lo más cerca que pude encontrar: Logging Django SQL queries with DEBUG set to False
4
Sobre la base de la respuesta de Sid y este fragmento (http://djangosnippets.org/snippets/1973/) He reemplazar el postgres db-envoltura con esto:
# base.py
from django.db.backends.postgresql_psycopg2.base import *
#http://djangosnippets.org/snippets/1973/
class DatabaseWrapper(DatabaseWrapper):
def __init__(self, *args, **kwargs):
super(DatabaseWrapper, self).__init__(*args, **kwargs)
self.use_debug_cursor = True
Luego, en settings.py
, utilice 'ENGINE': 'my_project.db_backend'
, en lugar del backend por defecto (en mi caso, 'ENGINE': 'django.db.backends.postgresql_psycopg2'
,)
ahora connection.queries
contendrá todas sus consultas!
Cuestiones relacionadas
- 1. ¿Cómo se muestran las últimas consultas ejecutadas en MySQL?
- 2. obtener todas las consultas ejecutadas en SQL Server
- 3. ¿Puedo almacenar en caché las consultas LINQ parcialmente ejecutadas?
- 4. SQL: ¿Cómo puedo obtener el número de consultas ejecutadas por base de datos o hora o ...?
- 5. Cómo sincronizar las consultas de Django
- 6. Cuándo utilizar el método save: NSManagedObjectContext
- 7. Agregando save() s en Django?
- 8. ¿En qué secuencia son consultas y subconsultas ejecutadas por el motor SQL?
- 9. Contar el número de consultas ejecutadas por NHibernate en una prueba de unidad
- 10. Número de conteos de consultas MySQL ejecutadas en la página
- 11. ¿Cómo veo las consultas ejecutadas dentro de SQL Server Management Studio?
- 12. que imita Django modelo y save()
- 13. Múltiples consultas ejecutadas en java en una sola declaración
- 14. ¿Cómo puedo obtener una consulta para .save() en django?
- 15. ¿Cómo se miden las "consultas por segundo"?
- 16. ¿Hay alguna herramienta para ver las consultas ejecutadas en la base de datos?
- 17. Django Overriding Model Clean() vs Save()
- 18. Django - Guardar operaciones basadas en save() short
- 19. Django - save() actualización en clave duplicada
- 20. Django - Anulando el método Model.create()?
- 21. ¿A dónde van las cosas cuando las 'imprimo' desde mi aplicación Django?
- 22. 1.3M consultas/Hora. ¿Cómo construirías las consultas?
- 23. ¿Cómo planificar pruebas adicionales ejecutadas por un sub externo?
- 24. consultas clave Django Exteriores
- 25. ¿Cómo imprimo cualquier valor después de llamar al método Main()?
- 26. Ver las consultas SQL para Django queryset delete
- 27. ¿Cómo implementar la pista de auditoría del modelo Django? ¿Cómo accedes al usuario registrado en el método save() de modelos?
- 28. pasando un argumento a un método personalizado save()
- 29. ¿Cómo imprimo un bit?
- 30. Consultas Django: cómo hacer contiene O no contiene consultas
correcto, pero la pregunta específicamente para .save() y DEBUG = True no es una opción ya que no puedo configurar mi servidor activo en DEPURACIÓN. Tampoco puedo reproducir mi problema en mi entorno de depuración. –
Parece que no hay una forma sencilla y directa sin DEBUG = True. Esto es lo más cercano que pude encontrar: http://stackoverflow.com/questions/7181511/logging-django-sql-queries-with-debug-set-to-false – Sid
Tal vez puede configurar su base de datos para [consultas de registro] (http://www.postgresql.org/docs/8.3/static/runtime-config-logging.html#GUC-LOG-STATEMENT) (cuidado: lo ralentiza) – RickyA