Middle
19
Как найти запросы в PostgreSQL, которые выполняются больше одной минуты (или 5 секунд)?
Companies where asked
ТБанк
Answer from AI
sobes.tech 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'.
Этот запрос покажет идентификатор процесса, длительность выполнения и сам текст запроса. Для мониторинга можно настроить регулярный запуск или использовать инструменты мониторинга, которые собирают такую статистику.