- type: host-command
name: check_rpo
command: |
psql -t -A -F "," -c "
SELECT round((redo_lsn - restart_lsn) / 1024 / 1024 / 1024, 2)
FROM pg_control_checkpoint(), pg_replication_slots;"
result: rpo_check_output
--------
JavaScript state:
yaml
Copy
Edit
- type: javascript
name: validate_rpo
script: |
var rpoValues = rpo_check_output.stdout.trim().split("\n").map(parseFloat);
if (rpoValues.every(val => val === 0)) {
proceed("Replicas are in sync");
} else {
fail("Replication lag detected. gb_behind: " + rpoValues.join(", "));
}
---
State 2 :
var rpoValues = rpo_check_output.stdout
.trim()
.split("\n")
.map(v => parseFloat(v));
// Check if all replicas are in sync
if (rpoValues.every(val => val === 0)) {
proceed("Replication is in sync");
} else {
fail("Replication lag detected: gb_behind = " + rpoValues.join(", "));
}





0 comments:
Post a Comment