"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo capturar todas las consultas SQL en Django para depuración y análisis de rendimiento?

¿Cómo capturar todas las consultas SQL en Django para depuración y análisis de rendimiento?

Publicado el 2024-11-25
Navegar:295

How to Capture All SQL Queries in Django for Debugging and Performance Analysis?

Registrar todas las consultas SQL en Django

En Django, capturar las consultas SQL ejecutadas por su aplicación puede proporcionar información valiosa para la depuración y el análisis de rendimiento y monitoreo de seguridad. Así es como puede lograr esto:

Para registrar todas las consultas SQL, incluidas las del sitio de administración, modifique la configuración de REGISTRO en su archivo settings.py. Agregue el siguiente fragmento para fusionarlo con el campo LOGGING existente:

LOGGING = {
    'version': 1,
    'filters': {
        'require_debug_true': {
            '()': 'django.utils.log.RequireDebugTrue',
        }
    },
    'handlers': {
        'console': {
            'level': 'DEBUG',
            'filters': ['require_debug_true'],
            'class': 'logging.StreamHandler',
        }
    },
    'loggers': {
        'django.db.backends': {
            'level': 'DEBUG',
            'handlers': ['console'],
        }
    }
}

Esta configuración enrutará todas las consultas SQL a la consola cuando el indicador DEBUG esté establecido en Verdadero en su settings.py. Si prefiere registrar las consultas en un archivo, puede reemplazar el controlador de 'consola' con un 'FileHandler' y especificar la ruta al archivo de registro.

Por ejemplo, para registrar las consultas en un archivo llamado all-sql.log, utilice el siguiente controlador:

'handlers': {
    'all_sql_file': {
        'level': 'DEBUG',
        'filters': ['require_debug_true'],
        'class': 'logging.FileHandler',
        'filename': 'all-sql.log',
    }
}

Asegúrese de reiniciar su servidor Django después de realizar estos cambios para garantizar que la nueva configuración de registro surta efecto.

Declaración de liberación Este artículo se reimprime en: 1729157237 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3