レプリケーション遅延を表示
PostgreSQLレプリケーションコマンド
SELECT client_addr, state, sent_lsn, replay_lsn, pg_wal_lsn_diff(pg_current_wal_lsn(), replay_lsn) AS replay_lag_bytes, write_lag, flush_lag, replay_lag FROM pg_stat_replication;概要
プライマリ上で、プライマリの現在のWAL位置に対する各スタンバイのリプレイ差をバイト単位で表示し、write/flush/replayの遅延も表示する。
使用する場面
ストリーミングレプリケーションの遅れを監視するため(プライマリで実行)。
注意
スタンバイでの秒単位の遅延: SELECT now() - pg_last_xact_replay_timestamp(); この値はプライマリで書き込みがない場合も増加するため、LSN差と併せて解釈する。結果が空の場合、スタンバイは接続されていない。