Tier: M (2-4 days) | Type: ops
Context. stellar/scripts/metrics-indexer/ ships a Prometheus scraper and a pre-built grafana-dashboard.json, and stellar/scripts/keeper/ runs the TTL keeper, but there is no alert layer on top of them. stellar/MAINNET_READINESS.md has Ops → Incident Response Runbook and Ops → On-call Rotation both unchecked. stellar/DEPLOYMENT.md contains zero references to monitor, on-call, alert, runbook, or incident. Wave 8 turns the metrics into a real alerting stack before mainnet.
Scope.
- Add Grafana alert rules alongside the dashboard: rate spike on
send_count, drop on resolve_hit_count, missed keeper heartbeat, name-registration failure spike.
- Add
stellar/scripts/synthetic-check.sh: end-to-end announcement / resolution / name-lookup ping against a target network, with pass / fail exit codes suitable for a cron.
- Publish
stellar/ONCALL.md: escalation ladder, paging targets, incident-response checklist (declare, contain, communicate, resolve, postmortem), links to the pause and multisig runbooks.
- Update
stellar/DEPLOYMENT.md with a new "Post-deploy monitoring" section pointing at all three.
Acceptance.
Files. stellar/scripts/metrics-indexer/alerts.json (new), stellar/scripts/metrics-indexer/docker-compose.yml (or existing config file), stellar/scripts/synthetic-check.sh (new), stellar/ONCALL.md (new), stellar/DEPLOYMENT.md, stellar/MAINNET_READINESS.md, stellar/README.md.
Tier: M (2-4 days) | Type: ops
Context.
stellar/scripts/metrics-indexer/ships a Prometheus scraper and a pre-builtgrafana-dashboard.json, andstellar/scripts/keeper/runs the TTL keeper, but there is no alert layer on top of them.stellar/MAINNET_READINESS.mdhas Ops → Incident Response Runbook and Ops → On-call Rotation both unchecked.stellar/DEPLOYMENT.mdcontains zero references tomonitor,on-call,alert,runbook, orincident. Wave 8 turns the metrics into a real alerting stack before mainnet.Scope.
send_count, drop onresolve_hit_count, missed keeper heartbeat, name-registration failure spike.stellar/scripts/synthetic-check.sh: end-to-end announcement / resolution / name-lookup ping against a target network, with pass / fail exit codes suitable for a cron.stellar/ONCALL.md: escalation ladder, paging targets, incident-response checklist (declare, contain, communicate, resolve, postmortem), links to the pause and multisig runbooks.stellar/DEPLOYMENT.mdwith a new "Post-deploy monitoring" section pointing at all three.Acceptance.
stellar/scripts/metrics-indexer/and loaded by the docker-compose in that dirsynthetic-check.shreturns nonzero on injected failure and zero on happy path (verified against futurenet in CI)stellar/ONCALL.mdreviewed and linked fromstellar/README.mdoperations sectionstellar/MAINNET_READINESS.mdIncident Response Runbook row checked with a link to ONCALL.mdFiles.
stellar/scripts/metrics-indexer/alerts.json(new),stellar/scripts/metrics-indexer/docker-compose.yml(or existing config file),stellar/scripts/synthetic-check.sh(new),stellar/ONCALL.md(new),stellar/DEPLOYMENT.md,stellar/MAINNET_READINESS.md,stellar/README.md.