Sobes.tech
Middle

Cum găsești interogările în PostgreSQL care durează mai mult de un minut (sau 5 secunde)?

sobes.tech AI

Răspuns de la AI

В PostgreSQL можно найти долгие запросы, используя представление pg_stat_activity, которое показывает текущие активные запросы. Например, чтобы найти запросы, выполняющиеся дольше 5 секунд, можно выполнить такой запрос:

SELECT pid, now() - query_start AS duration, query
FROM pg_stat_activity
WHERE state = 'active'
  AND now() - query_start > interval '5 seconds'
ORDER BY duration DESC;

Если нужно искать запросы дольше одной минуты, замените '5 seconds' на '1 minute'.

Этот запрос покажет идентификатор процесса, длительность выполнения и сам текст запроса. Для мониторинга можно настроить регулярный запуск или использовать инструменты мониторинга, которые собирают такую статистику.