Saltar al contenido

¿Es posible obtener un historial de consultas realizadas en postgres?

Solución:

No hay historial en la base de datos en sí, si está usando psql, puede usar ” s” para ver su historial de comandos allí.

Puede obtener consultas futuras u otros tipos de operaciones en los archivos de registro configurando log_statement en el archivo postgresql.conf. Lo que probablemente desee en su lugar es log_min_duration_statement, que si lo establece en 0 registrará todas las consultas y sus duraciones en los registros. Eso puede ser útil una vez que sus aplicaciones se activen, si lo establece en un valor más alto, solo verá las consultas de larga ejecución que pueden ser útiles para la optimización (puede ejecutar EXPLAIN ANALYZE en las consultas que encuentre allí para averiguar por qué eres lento).

Otra cosa útil que debe saber en esta área es que si ejecuta psql y le dice ” timing”, mostrará cuánto tiempo toma cada declaración después de eso. Entonces, si tiene un archivo sql que se ve así:

timing
select 1;

Puede ejecutarlo con las banderas correctas y ver cada declaración intercalada con el tiempo que tomó. Así es como y cómo se ve el resultado:

$ psql -ef test.sql 
Timing is on.
select 1;
 ?column? 
----------
        1
(1 row)

Time: 1.196 ms

Esto es útil porque no necesita ser un superusuario de la base de datos para usarlo, a diferencia de cambiar el archivo de configuración, y es más fácil de usar si está desarrollando un nuevo código y desea probarlo.

Si desea identificar consultas lentas, entonces los El método es usar la configuración log_min_duration_statement (en postgresql.conf o establecer por base de datos con ALTER DATABASE SET).

Cuando registró los datos, puede usar grep o algunas herramientas especializadas, como pgFouine o mi propio analizador, que carece de los documentos adecuados, pero a pesar de esto, funciona bastante bien.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *