В представлении pg_stat_activity для каждого серверного процесса будет присутствовать по одной строке с информацией, относящейся к текущей деятельности этого процесса.
| Столбец | Тип | Описание |
|---|---|---|
datid | oid | OID базы данных, к которой подключён этот серверный процесс |
datname | name | Имя базы данных, к которой подключён этот серверный процесс |
pid | integer | Идентификатор процесса этого серверного процесса |
usesysid | oid | OID пользователя, подключённого к этому серверному процессу |
usename | name | Имя пользователя, подключённого к этому серверному процессу |
application_name | text | Название приложения, подключённого к этому серверному процессу |
client_addr | inet | IP-адрес клиента, подключённого к этому серверному процессу. Значение null в этом поле означает, что клиент подключён через сокет Unix на стороне сервера или что это внутренний процесс, например, автоочистка. |
client_hostname | text | Имя компьютера для подключённого клиента, получаемое в результате обратного поиска в DNS по client_addr. Это поле будет отлично от null только в случае соединений по IP и только при включённом режиме log_hostname. |
client_port | integer | Номер TCP-порта, который используется клиентом для соединения с этим серверным процессом, или -1, если используется сокет Unix |
backend_start | timestamp with time zone | Время запуска процесса, т. е. время, когда клиент подсоединился к серверу |
xact_start | timestamp with time zone | Время начала текущей транзакции в этом процессе или null при отсутствии активной транзакции. Если текущий запрос был первым в своей транзакции, то значение в этом столбце совпадает со значением столбца query_start. |
query_start | timestamp with time zone | Время начала выполнения активного в данный момент запроса, или, если state не active, то время начала выполнения последнего запроса |
state_change | timestamp with time zone | Время последнего изменения состояния (поля state) |
waiting | boolean | True, если этот серверный процесс ожидает освобождения блокировки |
state | text | Общее текущее состояние этого серверного процесса. Возможные значения: active: серверный процесс выполняет запрос. idle: серверный процесс ожидает новой команды от клиента. idle in transaction: серверный процесс находится внутри транзакции, но в настоящее время не выполняет никакой запрос. idle in transaction (aborted): Это состояние подобно idle in transaction, за исключением того, что один из операторов в транзакции вызывал ошибку. fastpath function call: серверный процесс выполняет fast-path функцию. disabled: Это состояние отображается для серверных процессов, у которых параметр track_activities отключён. |
backend_xid | xid | Идентификатор верхнего уровня транзакции этого серверного процесса или любой другой. |
backend_xmin | xid | текущая граница xmin для серверного процесса. |
query | text | Текст последнего запроса этого серверного процесса. Если state имеет значение active, то в этом поле отображается запрос, который выполняется в настоящий момент. Если процесс находится в любом другом состоянии, то в этом поле отображается последний выполненный запрос. |
SELECT "pid", "usename", "client_addr", "datname", application_name , EXTRACT(EPOCH FROM CURRENT_TIMESTAMP - "query_start")::INTEGER, "state", "query" FROM "pg_stat_activity";