Integración de python cprofile y el recopilador de registros de postgresql para Odoo Consulta el menú Profiler en el menú de administración
Traducción automática al español (DeepSeek) de la descripción original de OCA, que está en inglés.
auto_awesome Qué hace este módulo
Generado por IA a partir del código · Odoo 14.0Permite a los administradores registrar y analizar el rendimiento del propio Odoo, capturando la ejecución de código Python y las estadísticas de consultas de PostgreSQL durante un periodo elegido y mostrando las operaciones más lentas o frecuentes.
Este módulo añade un área de Profiler para administradores del sistema. En el menú Profiler se crea un registro Profile, se le da un nombre y se elige qué medir.
- El profiling de Python puede abarcar toda la actividad o limitarse a peticiones HTTP individuales; el registro de PostgreSQL puede activarse al mismo tiempo.
- El formulario tiene botones Enable, Disable y Clear y una barra de estado que muestra si el perfil está habilitado o deshabilitado, además de las fechas de inicio y fin.
- Mientras un perfil se ejecuta, el módulo registra el trabajo realizado: para el modo "all activity" almacena un archivo de profiling y, si se solicita el informe legible, una lista de líneas de Python con número de llamadas, tiempo total, tiempo por llamada y tiempo acumulado. Para el modo "per HTTP request" lista cada petición con su ruta, usuario, contexto y duración.
- Cuando el registro de PostgreSQL está activado, el perfil muestra tres tablas ya preparadas: consultas más lentas, consultas que más tiempo consumen y consultas más frecuentes, generadas a partir del log de la base de datos.
- Los adjuntos (archivos de profiling e informes de la base de datos) se vinculan al perfil y pueden abrirse desde un botón del formulario.
Todo está restringido al grupo de administrador de Settings. El profiling de toda la actividad requiere que el servidor se ejecute sin workers, y el registro de PostgreSQL necesita que el servidor de base de datos esté configurado para recopilar logs.
Depende de
Menús que añade
Modelos y campos (3)
- profiler.profile · modelo nuevoname, state, session, pg_remote, description, pg_log_path, date_started, use_py_index, date_finished, enable_python, python_method, py_stats_lines, attachment_count, py_request_lines, enable_postgresql, pg_stats_slowest_html (PostgreSQL Stats - Slowest), pg_stats_most_frequent_html (PostgreSQL Stats - Most Frequent), pg_stats_time_consuming_html (PostgreSQL Stats - Time Consuming)
- profiler.profile.python.line · modelo nuevoprofile_id, cprof_fname (Filename:lineno(method)), cprof_ncalls (Calls), cprof_cumtime (Cumulative time), cprof_nrcalls (Recursive Calls), cprof_tottime (Total time), cprof_ctpercall (CT per call), cprof_ttpercall (Time per call)
- profiler.profile.request.line · modelo nuevoname (Path), user_id (User), root_url (Root URL), profile_id, total_time (Time in ms), display_name (Name), user_context (Context), attachment_id (pStats file)
Texto generado por IA (DeepSeek) al leer el código de la versión 14.0 en GitHub; puede contener errores, así que verifícalo en el código antes de decidir. Ver el código en GitHub
Disponibilidad por versión
Revisado: 2026-11-03Estado de confirmación: 3 confirmadas, 6 sin información de 9 versiones.
Fuentes · Odoo 12.0
Confirmado el 2026-11-03 en la rama 12.0 de OCA/server-tools.
terminal Instalación y uso
Documentación de OCA · Odoo 14.0Instalación
Fuente · Odoo 14.0Para aprovechar las capacidades de Postgres, habilite el registro de Postgres e instale PGbadger.
El perfilado de Python funcionará sin configuración adicional.
Para el perfilado de Python tenemos dos métodos:
Perfilado completo: Perfila cualquier cosa que ocurra entre A y B. Para este método, inicia Odoo con workers=0, crea un registro de perfil y selecciona el método Python 'All activity'. Activa el perfilador, realiza acciones en Odoo y desactívalo de nuevo. En 'Attachments' puedes descargar el archivo de estadísticas de cProfile.
Perfilado de la sesión actual por solicitud HTTP: Perfila las solicitudes HTTP en la sesión de usuario activa. Este método también funciona en modo multi-worker. Crea un registro de perfil y selecciona el método Python 'Per HTTP request'. Activa el perfilador, realiza acciones en Odoo y observa cómo la lista se va llenando con solicitudes. Después de un tiempo, desactívalo. Puedes encontrar tus solicitudes HTTP lentas ordenando por la columna 'Total time', y descargar el archivo de estadísticas de cProfile para un análisis más detallado.
Los archivos de estadísticas se pueden analizar visualmente, por ejemplo, con Snakeviz o Tuna.
Traducción automática al español (DeepSeek) de la documentación original de OCA; los comandos y el código no se traducen. Sin información verificada en OCA: Configuración.
Las instrucciones de instalación, el paquete de distribución, las dependencias y los pasos de configuración no se muestran porque todavía no se han verificado en la documentación del módulo para ninguna versión.
Datos importados de GitHub: esta ficha refleja la última revisión del catálogo, no una consulta en directo. Verifica siempre en la documentación del módulo y en staging antes de instalar en producción.