Skip to main content

Basic Setup

Configure your ICMP monitor by specifying the target host:
  • Hostname or IP address: The server you want to monitor (e.g. db.example.com or 203.0.113.1)
  • IP family: Choose between IPv4 (default) or IPv6
  • Pings per run: Number of ICMP Echo Request packets to send per check run (1-50, default: 10)

Packet Loss Limits

Define packet loss thresholds to determine when an ICMP monitor should be considered degraded or failed:

Assertions

Use assertions to validate ICMP results and make sure your host meets availability and performance expectations.
You can create assertions based on:
  • Latency metrics: ICMP monitors send 10 pings per run by default and measure round-trip time (RTT) for every received packet. You can validate the resulting min, max, avg, or stddev latency values.
  • JSON response: Assert against the JSON response structure. This allows you to target specific fields using JSON path assertions. For example:
    • $.latency.max → catch latency spikes
    • $.packetsReceived → detect dropped ping responses
    • $.dnsResolutionTime → separate DNS issues from ICMP latency
    • $.pingResults[*].ttl → check TTL values
    Learn more about JSON path assertions: JSON responses with JSON path.

JSON Response Schema

The ICMP response is parsed into a structured JSON format. All responses share a common structure:

Frequency

Set how often the monitor runs (every 10 seconds to 24 hours):

Scheduling & Locations

  • Strategy: Choose between round-robin or parallel execution. Learn more about scheduling strategies
  • Locations: Select public or private locations to run the monitor from

Additional Settings