Statuses, locations and thresholds
| Status | Interpretation |
|---|---|
| Pending | No established health result yet; not verified uptime |
| Up | Required healthy-location quorum and any value thresholds are satisfied |
| Late | A heartbeat location missed its deadline plus grace; the check rollup may be degraded or down |
| Degraded | Healthy requirement missed, but failing quorum still met; or a warning threshold breached |
| Down | Failing quorum missed, critical value breached or expiration critical threshold reached |
| Paused | Evaluation is suspended; not proof that the service is healthy |
Location statuses and aggregate check statuses are different. A website probe can be down while the check is degraded; a heartbeat location can be late while another sender keeps aggregate health up.
Quorum
Section titled “Quorum”Let H be the number of healthy locations/resolvers. Let A be locations
required for healthy (degraded_threshold) and B be locations required
to avoid failing (failing_threshold).
- If all locations are pending, aggregate health is pending.
- Otherwise,
H >= Ameans up. - Below
A,H >= Bmeans degraded. - Below
B, health is down.
Blank A requires all configured locations. Both explicit counts must be
positive, and B cannot exceed the healthy requirement.
For three locations with A=3, B=2: three healthy is up, two is degraded,
one or zero is down. DNS lagging resolvers count as healthy; pending ones do not.
Review counts when adding/removing locations.
Other signals
Section titled “Other signals”Heartbeat numeric values are a separate worst-location signal. Above/below warning makes degraded; critical makes down, including equality. The worse of value health and quorum wins.
Domain and certificate checks use expiration day thresholds instead of location quorum. Lookup failure alone is not proof of expiration.
An incident spans degraded/down transitions and resolves only when fully up. See incident lifecycle. Pause/resume is not exposed as an API/MCP update field; a paused heartbeat endpoint accepts requests but does not record them.