check-jitter 0.2.17

A Nagios compatible plugin to measure network jitter.
Documentation

check_jitter

crates.io Documentation ISC licensed

This plugin will measure network jitter by sending a number of ICMP pings to a host and calculate the average jitter based on the differences between consecutive round trip times.

Help Text

check_jitter - A Nagios compatible plugin that measures network jitter.

SAMPLE INTERVALS

When -m and -M are both set to 0, the plugin will send pings immediately after
receiving a response.

When -m and -M are set to the same value, the plugin will send pings at a fixed
interval.

When -m and -M are set to different values, the plugin will send pings at random
intervals between the two values.

-m must be less than or equal to -M.

THRESHOLD SYNTAX

Thresholds are defined using Nagios range syntax.

Example ranges:
+------------------+-------------------------------------------------+
| Range definition | Generate an alert if x...                       |
+------------------+-------------------------------------------------+
| 10               | < 0 or > 10, (outside the range of {0 .. 10})   |
+------------------+-------------------------------------------------+
| 10:              | < 10, (outside {10 .. ∞})                       |
+------------------+-------------------------------------------------+
| ~:10             | > 10, (outside the range of {-∞ .. 10})         |
+------------------+-------------------------------------------------+
| 10:20            | < 10 or > 20, (outside the range of {10 .. 20}) |
+------------------+-------------------------------------------------+
| @10:20           |  10 and ≤ 20, (inside the range of {10 .. 20}) |
+------------------+-------------------------------------------------+

Usage: check_jitter [OPTIONS] --host <HOST>

Options:
  -c, --critical <CRITICAL>          Critical limit for network jitter in milliseconds
  -d, --debug                        Enable debug logging
  -H, --host <HOST>                  Hostname or IP address to ping
  -m, --min-interval <MIN_INTERVAL>  Minimum interval between ping samples in milliseconds [default: 0]
  -M, --max-interval <MAX_INTERVAL>  Maximum interval between ping samples in milliseconds [default: 0]
  -p, --precision <PRECISION>        Precision of the output decimal places [default: 3]
  -s, --samples <SAMPLES>            Number of pings to send [default: 10]
  -t, --timeout <TIMEOUT>            Timeout in milliseconds per individual ping check [default: 1000]
  -w, --warning <WARNING>            Warning limit for network jitter in milliseconds
  -h, --help                         Print help
  -V, --version                      Print version

Installation

Download the latest Linux or Windows binary from the latest release page.

Use together with NRPE or similar, preferably with Opsview.

Note that the plugin requires elevated permissions, so you will have to use setuid or similar.

License

Copyright © 2024 Johan Thorén johan@thoren.xyz

This project is released under the ISC license. See the LICENSE file for more details.