Siehe this closely related answer.
pg_stat_activity
ist eine Ansicht im pg_catalog
Schema.
Sie können es von SELECT
wie jede andere Tabelle abfragen, zB SELECT * FROM pg_stat_activity
. Die Handbuchseite, mit der Sie verlinkt haben, erklärt ihre Spalten.
Sie werden manchmal finden sich auf andere Tabellen wie pg_class
(Tabellen) beitreten wollen, pg_namespace
(Schemata) usw.
pg_stat_activity
tut nicht Informationen über Back-End-Speichernutzung aus. Sie müssen hierfür die Funktionen auf Betriebssystemebene verwenden. Es tut Sie die Prozess-ID, aktive Benutzer zu sagen, derzeit Abfrage ausgeführt wird, Aktivitätsstatus, Uhrzeit der letzten Abfrage gestartet, usw. Es ist für die Identifizierung gut ist lang andauernde idle in transaction
Sitzungen, sehr lange laufende Abfragen usw.
Offen gesagt Das eingebaute Monitoring von PostgreSQL ist eher rudimentär. Es ist einer der Bereiche, an denen es nicht so aufregend ist, zu arbeiten, und kommerzielle Kunden sind nicht oft bereit, es zu finanzieren. Die meisten Leute koppeln Werkzeuge wie check_postgres
mit Icinga und Munin oder verwenden Zabbix oder andere externe Überwachungsagenten.
In Ihrem Fall klingt es wie Sie wollen pg_stat_statements
, und/oder PgBadger Log-Analyse mit geeigneten Logging-Einstellungen und möglicherweise die auto_explain
Modul.
Wahrscheinlich benötigen Sie stattdessen das [pgstatstatements module] (http://www.postgresql.org/docs/current/static/pgstatstatements.html). –