質問「Postgresクエリの実行時間」については、この密接に関連する回答を参照してください。 。
pg_stat_activity
pg_catalog
のビューです スキーマ。
SELECT
でクエリできます 他のテーブルと同じようにそれから作成します。 SELECT * FROM pg_stat_activity
。リンク先のマニュアルページでその列について説明しています。
pg_class
のような他のテーブルに参加したいと思うことがあるでしょう。 (テーブル)、pg_namespace
(スキーマ)など
制限
pg_stat_activity
しない バックエンドのメモリ使用に関する情報を公開します。そのためには、オペレーティングシステムレベルの機能を使用する必要があります。ただし、します プロセスID、アクティブユーザー、現在実行中のクエリ、アクティビティステータス、最後のクエリが開始された時刻などを通知します。これは、長時間実行されているidle in transaction
を識別するのに適しています。 セッション、非常に長時間実行されるクエリなど。
率直に言って、PostgreSQLの組み込みの監視はかなり初歩的なものです。これは、取り組むのがそれほどエキサイティングではない分野の1つであり、商用クライアントは、多くの場合、それに資金を提供することをいとわないでしょう。ほとんどの人はcheck_postgres
のようなツールを組み合わせます IcingaとMuninを使用するか、Zabbixまたはその他の外部監視エージェントを使用します。
あなたの場合、本当にpg_stat_statements
が必要なようです 、および/またはPgBadger
適切なログ設定と、場合によってはauto_explain
を使用したログ分析 モジュール。