Mostrar el lag de replicación
PostgreSQLReplicaciónComando
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;Qué hace
En el primario, muestra la diferencia de replay de cada standby en bytes respecto a la posición WAL actual del primario, además del lag de write/flush/replay.
Cuándo usarlo
Para monitorear cuánto va retrasada la replicación streaming (ejecutar en el primario).
Precaución
Para el lag en segundos en el standby: SELECT now() - pg_last_xact_replay_timestamp(); este valor también crece cuando no hay escrituras en el primario, así que interprételo junto con la diferencia de LSN. Un resultado vacío significa que no hay ningún standby conectado.
Relacionado
- Construir una réplica física (pg_basebackup)
- Promover una réplica a primario
- Crear y eliminar un replication slot
- Configurar una publicación y una suscripción de replicación lógica
- Configurar un standby manualmente (standby.signal + primary_conninfo)
- Monitorear el lag de recepción y replay de WAL en el standby (pg_stat_wal_receiver)