Probe type · Starter+
Ping (ICMP) probe
Raw reachability. Sends a batch of ICMP echoes, averages the round-trips, counts the losses, and flips Degraded or Down on the thresholds you set.
Why you need it
A Ping probe sends a small batch of ICMP echo
packets at the target — exactly what the ping command
does — and turns the result into a state. The lowest-level
reachability signal StatusPulse offers, and the right tool for
anything that lives at the IP layer rather than the application
layer.
Each check measures two numbers:
- Round-trip time averaged across the batch. Charted on the detail page and compared against the Degraded above (ms) threshold (default 200 ms).
- Packet loss as a percentage. Loss over the Degraded above (% loss) threshold (default 20 %) flips Degraded; 100 % loss always flips Down regardless of the threshold.
Azure App Service and Functions sandboxes don't allow raw ICMP, so the probe is dispatched to a dedicated ICMP worker sidecar on Container Apps. There's a small constant overhead on top of the wire latency — tune your Degraded threshold against the baseline the probe itself reports, not your terminal.
Where it pays off
Use a Ping probe when you care about raw reachability of an IP-routable host, not whether a specific application on that host is healthy. Concrete cases:
- Network gateways and routers — colo routers, VPN concentrator endpoints, firewall WAN interfaces.
- Anycast IPs — fast sanity check that an anycasted address is routable from the probe region.
- Network path quality — baseline the typical RTT to an upstream and alert when it spikes or drops packets.
- Bare metal without HTTP — "this box is alive" when there's no application-level signal to probe.
- IPv6 reachability specifically — turn Prefer IPv6 on and run a second probe to catch v4-healthy-but-v6-isn't.
Not the right choice when: the target is a website or API (use HTTP — a successful ping says nothing about HTTP), when the host firewalls ICMP (most public-cloud VMs do — use TCP), when the service is TCP-only (SSH, SMTP — use TCP probe), or when the target sits behind a NAT inside your network (use Heartbeat).
Configuration parameters
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
Name |
string |
Required | — | Human-readable label shown in the dashboard, on the status page, and in alert subject lines. |
Target |
string (hostname or IP) |
Required | — | Hostname or literal IP (IPv4 or IPv6). Public addresses only — RFC1918, link-local 169.254.0.0/16 (including AWS metadata), and IPv6 ULA fc00::/7 rejected at resolve time. |
Packets per check |
integer (1-50) |
Optional | 5 | How many ICMP echoes to send each run. Five is the sweet spot — enough for a stable RTT average and a meaningful loss percentage. |
Degraded above (ms) |
integer |
Optional | 200 | Average RTT above which the probe flips Up → Degraded. Baseline against the probe's own reported RTT; zero disables the latency tier. |
Degraded above (% loss) |
integer (0-100) |
Optional | 20 | Packet-loss percentage above which the probe flips Degraded. 100 % loss always flips Down regardless of this setting. |
Prefer IPv6 |
boolean |
Optional | false | When the hostname resolves to both IPv4 and IPv6, ping the v6 address instead of v4. Ignored for IP literals. |
Interval (seconds) |
integer |
Optional | 60 | Time between checks. Floor is plan-gated: 30 s on Starter+. |
Timeout (seconds) |
integer (1-120) |
Optional | 30 | Hard ceiling for the whole batch. |
Show on status page |
boolean |
Optional | false on create | Master visibility gate for the public page. |
Paused |
boolean |
Optional | false | Master kill-switch. |
Auto-email alerts |
boolean |
Optional | true | Per-probe switch on top of per-watcher toggles. |
SLA target |
decimal (99.0-99.999) |
Optional | — | Optional uptime SLO. |
Available on Starter+. Already on StatusPulse? See the full config in Help →
Related
Try Ping (ICMP) probe in StatusPulse
5 probes, 1 status page, forever. No credit card. US or EU host — you choose.