Key Metrics
PPS Staleness
Vault detail exposespps_info.last_pps_update_timestamp (Unix seconds) and pps_info.max_pps_update_interval (seconds). Compare their sum with current time to determine remaining PPS lifetime. Alert as PPS approaches or reaches expiry using the vault’s operating policy. A missing value, invalid timestamp, or unavailable observation freshness is UNKNOWN, not extra lifetime. Check strategy_is_paused separately; an absent value does not mean unpaused.
Service Success Rate
The services endpoint returns control records such asservice_name, is_paused, run_interval_seconds, last_run_at, and next_run_at, not a success_rate. Inspect pause state and run timing. Calculate a success rate only from a verified run-history source with a defined window and sample count; no samples means UNKNOWN, not 100% success.
Redemption Queue Depth
Track pending request count, value, and age from redemption data. Do not count generic pending executions as redemption requests. Reconcile fulfillment and claimable assets separately; see Redemption.Full Monitoring Loop
- Fetch through an approved integration with timeouts, bounded backoff, and no overlapping polls.
- Validate the response envelope and required fields. Retain collection time separately from producer observation time.
- Classify missing, stale, malformed, or non-finite values and missing or future observation times as UNKNOWN. A successful HTTP response alone does not establish freshness or health.
- Apply thresholds only to valid, sufficiently fresh observations. Persist the result and alert on both degraded and unknown conditions.
- Investigate the affected vault, service, or intent before any separately authorized remediation.
