¿Cómo puedo saber cuántas consultas por segundo se está ejecutando mi base de datos Postgres?
postgresql
Konrad Garus
fuente
fuente
Respuestas:
Use esta consulta para leer el número total de transacciones ejecutadas en todas las bases de datos:
Si desea el mismo contador para una sola base de datos, use:
Para calcular TPS (transacciones por segundo), ejecute la consulta varias veces y calcule la diferencia en el intervalo de tiempo.
Hay herramientas listas para eso, una de ellas es http://bucardo.org/wiki/Check_postgres
Más información: http://www.postgresql.org/docs/9.2/static/monitoring-stats.html#PG-STAT-DATABASE-VIEW
Actualización: Konrad corrigió mi malentendido de su pregunta. El objetivo era contar consultas, no transacciones.
¿Cómo contar las consultas?
Método 1
Utilice pg_stat_statements contrib.
Método 2
Habilite el registro completo de consultas durante un período de tiempo representativo.
Para habilitar el registro completo, para PostgreSQL 9.0 - 9.3, cambie la siguiente configuración en
postgresql.conf
Si desea ver también la duración de la consulta, puede establecerla en
log_min_duration_statement = 0
lugar delog_statement = all
. Esto es muy útil para el ajuste de consultas.Luego, vuelva a cargar la configuración (reinicio o HUP) y recopile suficiente registro para estimar el tráfico.
Nota: ninguno de los métodos incluirá consultas integradas en funciones definidas por el usuario.
fuente