Lihat jawaban yang terkait erat ini untuk pertanyaan "Waktu eksekusi Kueri Postgres" .
pg_stat_activity
adalah tampilan di pg_catalog
skema.
Anda dapat menanyakannya dengan SELECT
ing dari itu seperti tabel lainnya, mis. SELECT * FROM pg_stat_activity
. Halaman manual yang Anda tautkan menjelaskan kolomnya.
Terkadang Anda ingin bergabung di tabel lain seperti pg_class
(tabel), pg_namespace
(skema), dll.
Batasan
pg_stat_activity
apakah tidak mengekspos informasi tentang penggunaan memori back-end. Anda perlu menggunakan fasilitas tingkat sistem operasi untuk itu. Namun tidak memberi tahu Anda ID proses, pengguna aktif, kueri yang sedang berjalan, status aktivitas, waktu kueri terakhir dimulai, dll. Ini bagus untuk mengidentifikasi idle in transaction
yang berjalan lama sesi, kueri yang berjalan sangat lama, dll.
Terus terang, pemantauan bawaan PostgreSQL agak belum sempurna. Ini adalah salah satu area yang tidak begitu menarik untuk dikerjakan, dan klien komersial sering kali tidak mau mendanainya. Kebanyakan orang memasangkan alat seperti check_postgres
dengan Icinga dan Munin, atau gunakan Zabbix atau agen pemantau eksternal lainnya.
Dalam kasus Anda, sepertinya Anda benar-benar menginginkan pg_stat_statements
, dan/atau PgBadger
analisis log dengan pengaturan logging yang sesuai dan mungkin auto_explain
modul.