Inmobiliaria
De hecho, estas son instantáneas cada segundo de pg_stat_activity, pero hay puntos importantes:
- Toda la información acumulada se almacena solo en la RAM, y la cantidad de memoria consumida está regulada por el número de los últimos registros almacenados.
- Se agrega el campo queryid: el mismo queryid de la extensión pg_stat_statements (se requiere preinstalación).
- Se agrega el campo top_level_query: el texto de la consulta desde la que se llamó a la consulta actual (en el caso de usar pl/pgsql)
Lista completa de campos pg_active_session_history:
columna | Escriba ------------------+-------------------------- ash_time | marca de tiempo con zona horaria con fecha | nombre de datos oid | pid de texto | entero usesysid | nombre de uso oid | texto application_name | texto client_addr | texto nombre_host_del_cliente | texto puerto_cliente | entero backend_start | marca de tiempo con zona horaria xact_start | marca de tiempo con zona horaria query_start | marca de tiempo con zona horaria state_change | marca de tiempo con zona horaria wait_event_type | texto espera_evento | estado del texto | texto backend_xid | xid backend_xmin | xid top_level_query | consulta de texto | ID de consulta de texto | bigint backend_tipo | texto
Todavía no hay un paquete listo para la instalación. Se propone descargar el código fuente y construir la biblioteca usted mismo. Primero debe instalar el paquete "devel" para su servidor y establecer la ruta a pg_config en la variable PATH. Nosotros coleccionamos:
cd pgsentinel/src
para lograr
make install
Agregue parámetros a postgres.conf:
shared_preload_libraries = 'pg_stat_statements,pgsentinel'
seguimiento_actividad_consulta_tamaño = 2048
pg_stat_statements.track = todos# número de registros recientes guardados en la memoria
pgsentinel_ash.max_entries = 10000
Vuelva a cargar PostgreSQL y cree una extensión:
crear extensión pgsentinel;
La información acumulada nos permite responder preguntas como:
- ¿A qué expectativas dedicaron la mayor parte del tiempo las sesiones?
- ¿Qué sesiones fueron las más activas?
- ¿Qué solicitudes fueron las más activas?
Por supuesto, puede obtener respuestas a estas preguntas mediante consultas SQL, pero es más conveniente ver esto claramente en el gráfico, resaltando los intervalos de tiempo de interés con el mouse. Puedes hacerlo con un programa gratuito.
Al inicio, PASH-Viewer (a partir de la versión 0.4.0) verifica la presencia de la vista pg_active_session_history y, si existe, carga todo el historial acumulado y continúa leyendo los nuevos datos entrantes, actualizando el gráfico cada 15 segundos.
Fuente: habr.com