Reachability hint¶
When a server dies, its services typically fail too. Without a reachability hint, every single check would fire its own alert email — a host with 12 services would produce 12 emails for exactly one problem.
The reachability hint marks one check per host as the „is the host even online?" signal. If that check fails, follow-up alerts from the host's other services are automatically suppressed. Only one email goes out: the reachability check itself.
Typically this is a ping check.
Relationship to dependencies & inhibition¶
Dependencies & inhibition model manual parent-child relationships across host boundaries („switch sw-core → 50 servers behind it"). The reachability hint works within a single host: it pauses that host's own service alerts when the host is unreachable.
Both work in parallel:
- A switch fails → inhibition suppresses alerts on the servers behind it.
- A single server fails → the reachability hint suppresses alerts on the services running ON that server.
Where do you configure this?¶
At the profile level (default for all hosts with that profile)¶
Profiles → expand profile → edit check (pencil icon)
In the check editor, at the bottom, the toggle „Use as reachability hint".
When you save — if hosts with this profile already exist and have a per-host override set for this check — a dialog appears:
- Yes, reset overrides too — the new profile default takes effect everywhere immediately, all per-host overrides are cleared.
- Only change the default, keep overrides — hosts that already have an individual reachability-hint choice are left untouched.
In the profile's check list, the check marked as reachability hint is shown with a radar badge next to its name.
Per host (override)¶
Open host → „Manage host" → „Reachability" tab
Three options:
| Option | Effect |
|---|---|
| Use profile default | Takes whatever the profile has set (standard, no override). |
| Disabled | No check on this host counts as a reachability hint. If the host goes down, all its services alert individually. |
| Set a specific check as hint | Expands a list of the host's active checks. Pick the one you want. |
The currently active choice is marked with a radar icon and an „currently active" badge.
A per-host override wins over the profile default — so you can deviate for a single host without affecting other hosts on the same profile.
Visible in the service table¶
On the host detail page, the service table shows a small radar icon next to the check name that's currently the reachability hint. Hover for the full tooltip.
How does this work technically?¶
Background:
- Column
profile_checks.is_reachability_hint— the profile default. Set when a new profile check is created; automaticallytruefor ping checks. - Column
host_services.is_reachability_hint_override— the per-host override.NULL= inherit,true/false= override. - Effective value:
COALESCE(host_services.is_reachability_hint_override, profile_checks.is_reachability_hint, false).
A background watcher (30s cadence) aggregates, per host, all checks with an effective is_reachability_hint=true:
- At least one is
alerting→ the host's reachability state becomesalerting. - All
ok→ the host's reachability state becomesok.
When processing a new check result, the worker checks whether the host's reachability state is alerting. If so, the DEGRADED→ALERTING transition of the host's child services is not promoted (see the setting „suspend children on reachability hint", default on). No alert, no email.
Once the hint check is OK again, normal promotion logic for the child services resumes.
Multiple reachability-hint checks per host¶
The data model allows several hint checks per host (e.g. ping AND HTTP). The watcher aggregates „alerting wins" — if any of them is alerting, the host counts as unreachable.
The UI, though, is single-select: when you choose „set a specific check as hint" in the manage-host view, all other hint overrides on that host are set to false. If you want the profile-default behavior with multiple hints, define several profile checks with is_reachability_hint=true — that applies across all hosts without an override.
On agent-managed hosts¶
In addition to the profile-check-based hint, the watcher also evaluates the agent heartbeat on agent-managed hosts: if the agent's last-seen timestamp is older than 3 minutes, the host is likewise treated as alerting. This works without you having to define an explicit ping check — the agent itself is the heartbeat.
If both sources report data (profile hint AND agent heartbeat), „alerting wins" applies.
Recommended defaults¶
- Servers with a ping check: ping as the reachability hint (automatic on profile creation).
- Switches/routers/firewalls with SNMP: ping as the reachability hint. SNMP checks alone aren't a good hint — the SNMP daemon can hang without the device itself being gone.
- Devices without ping (e.g. blocked outbound ICMP): set a TCP port check or a lightweight HTTP check as the hint.
- Agent-managed hosts: no explicit configuration needed, the heartbeat is enough.
When to disable it?¶
As a rule, you want to leave the reachability hint enabled. Disable it at most for individual critical services where you want an email even when the host is completely gone (e.g. SLA-relevant services with their own escalation).