Consensus & status
ZeroDrop runs every check from four locations. Consensus makes one verdict from those four independent results. It is the reason that ZeroDrop stays quiet until a service is really down.
The three states
A check is always in one of these states.
| State | Meaning |
|---|---|
| ok | Consensus says that the service is healthy. |
| firing | Consensus says that the service is down. An incident is open. |
| unknown | ZeroDrop cannot see enough locations to make a verdict. Monitoring is blind. |
How ZeroDrop makes a verdict
On each interval the evaluator looks at the live locations. A live location reported a fresh result and is not quarantined. The evaluator counts how many live locations report a failure. A check is breached for that evaluation when both of these conditions are true:
- The failing fraction of the live locations is equal to or more than the configured fraction.
- The number of failing locations is equal to or more than the configured floor.
A breach does not fire an incident immediately. The check must be breached for several consecutive evaluations before it moves to firing. It must be healthy for several consecutive evaluations before it returns to ok. This delay removes short blips.
Tune the thresholds
Each check has its own consensus settings. You can edit them on the check form.
| Setting | Default | What it controls |
|---|---|---|
| Floor (locations down to alert) | 2 | The minimum number of locations that must report down at the same time. The fraction does not change this minimum. |
| Fraction | 0.5 | The share of live locations that must fail for a breach. For example, 0.5 is one half. |
| Fire evals | 2 | The number of consecutive breached evaluations before the check fires. |
| Resolve evals | 2 | The number of consecutive healthy evaluations before the check resolves. |
| Min live locations | 3 | With fewer live locations than this number, the check is unknown and never fires. |
By default, two locations must agree that a check is down before it fires. As a result, one unreliable network or region cannot raise a false alarm.
To make a check more sensitive, decrease the floor to 1, decrease the fraction,
or decrease the fire evals. To make a check more conservative, increase these
values. Conservative values help for an endpoint that is sometimes slow but not
down.
Why the unknown state exists
Sometimes fewer locations report than the minimum live locations. The cause can be a network partition, an agent outage, or a firewall that blocks some regions. ZeroDrop does not guess. The check moves to unknown instead of a possible false alarm.
This is a deliberate fail-safe. When a monitored check loses visibility, ZeroDrop sends a monitoring blind notification. When visibility returns, it sends monitoring restored. These events are not incidents. They tell you that the view of ZeroDrop is degraded, not that your service is down. See Incidents & alerts.
The transitions
| Transition | Event | Incident? |
|---|---|---|
| ok to firing | Fire, an incident opens | Yes |
| firing to ok | Resolve, the incident closes | Yes |
| ok or firing to unknown | Blind, monitoring lost visibility | No |
| unknown to ok or firing | Restore, monitoring continues | No |
These transitions drive your notifications. You hear about a change of state, not a continuous stream of updates. To get reminders while an incident stays open, turn on repeat reminders in Settings.