Mostrar o lag de replicação
PostgreSQLReplicaçãoComando
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;O que faz
No primário, mostra a diferença de replay em bytes de cada standby em relação à posição atual do WAL do primário, além do lag de write/flush/replay.
Quando usar
Para monitorar o quanto a streaming replication está atrasada (execute no primário).
Atenção
Para o lag em segundos no standby: SELECT now() - pg_last_xact_replay_timestamp(); esse valor também cresce quando não há gravações no primário, então interprete-o junto com a diferença de LSN. Um resultado vazio significa que nenhum standby está conectado.
Relacionados
- Criar uma réplica física (pg_basebackup)
- Promover uma réplica a primário
- Criar e remover um replication slot
- Configurar uma publication e uma subscription de replicação lógica
- Configurar um standby manualmente (standby.signal + primary_conninfo)
- Monitorar o lag de recebimento e de replay de WAL no standby (pg_stat_wal_receiver)