★PostgreSQLカンファレンス2024 12月6日開催/チケット販売中★
他のバージョンの文書 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

19.9. 実行時統計情報

19.9.1. 問い合わせおよびインデックスに関する統計情報コレクタ

これらのパラメータは、サーバ全体の統計情報収集機能を制御します。 統計情報収集が有効ならば、生成されるデータはpg_statpg_statio系のシステムビュー経由でアクセス可能です。 詳細は第28章を参照してください。

track_activities (boolean)

各セッションで実行中のコマンドに関する情報とそのコマンドの実行開始時刻の収集を有効にします。 このパラメータはデフォルトで有効です。 有効な場合であっても、すべてのユーザがこの情報を見ることができず、スーパーユーザと報告されたセッションの所有者のみから可視である点に注意してください。 このためセキュリティ上の危険性はありません。 スーパーユーザのみがこの設定を変更することができます。

track_activity_query_size (integer)

pg_stat_activity.queryフィールドに対し、それぞれの活動中のセッションで現在実行されているコマンドを追跡記録するため予約されるバイト数を指定します。デフォルトの値は1024です。このパラメータはサーバ起動時のみ設定可能です。

track_counts (boolean)

データベースの活動についての統計情報の収集を有効にします。 収集される情報を自動バキュームデーモンが必要とするため、このオプションはデフォルトで有効です。 スーパーユーザのみがこの設定を変更することができます。

track_io_timing (boolean)

データベースによるI/O呼び出しの時間的調節を可能にします。このパラメータはデフォルトで無効になっています。その理由は、現時点の時刻をオペレーティングシステムに繰り返し問い合わせるので、プラットフォームによっては深刻な負荷の原因になります。自身の使用している負荷のタイミングを計測するためpg_test_timingツールが使用できます。 I/Oタイミング情報は、BUFFERS オプションが設定されている時EXPLAIN の出力として、またpg_stat_statementsにより表示されます。スーパーユーザのみこの設定を変更できます。

track_functions (enum)

関数の呼び出し数と費やされた時間の追跡を有効にします。 手続き言語関数のみを追跡するためにはplと指定してください。 SQL関数、C言語関数も追跡するためにはallと指定してください。 デフォルトは、統計情報追跡機能を無効にするnoneです。 スーパーユーザのみがこの設定を変更できます。

注記

呼び出す問い合わせ内にインライン化できる位単純なSQL言語関数は、この設定と関係なく、追跡されません。

stats_temp_directory (string)

統計情報データを一時的に格納するディレクトリを設定します。 これをデータディレクトリからの相対パスとすることも絶対パスとすることもできます。 デフォルトはpg_stat_tmpです。 これをRAMベースのファイルシステムを指し示すようにすることで物理I/O要求が減り、性能を向上させることができます。 このパラメータは、postgresql.confファイルまたはサーバのコマンドラインのみで設定可能です。

19.9.2. 統計情報の監視

log_statement_stats (boolean)
log_parser_stats (boolean)
log_planner_stats (boolean)
log_executor_stats (boolean)

各問い合わせに対し、対応するモジュールの性能に関する統計情報をサーバログに出力します。 これは、Unixのgetrusage()オペレーティングシステム機能に類似した、雑なプロファイリング手段です。 log_statement_statsは文に関する統計情報全体を、この他はモジュール毎の統計情報を報告します。 log_statement_statsとモジュール毎のオプションを一緒に有効にすることはできません。 デフォルトでこれらのオプションはすべて無効です。 スーパーユーザのみがこの設定を変更することができます。