PostgreSQL pg_stat_activity: посмотреть активные подключения

Категория: Postgresql · Язык: SQL · Обновлено:

pg_stat_activity показывает серверные процессы, состояние сессии, пользователя и текущий запрос. Ограничьте вывод неслужебными backend и сортируйте по времени старта для оперативной диагностики.

Рабочий пример

SQL
SELECT pid, usename, application_name, state, wait_event_type,
       clock_timestamp() - query_start AS query_age,
       left(query, 120) AS query
FROM pg_stat_activity
WHERE pid <> pg_backend_pid()
  AND backend_type = 'client backend'
ORDER BY query_start NULLS LAST;

state показывает active, idle или idle in transaction. Для долгих запросов полезны query_start и wait_event; доступ к тексту запросов зависит от роли и настроек сервера.

Частый вопрос

Почему видны не все запросы?

Для просмотра запросов других пользователей могут потребоваться расширенные права вроде pg_read_all_stats. Часть метаданных намеренно скрыта от обычных ролей.