# check_jitter
[](https://crates.io/crates/check-jitter)
[](https://docs.rs/check-jitter)
[](./LICENSE)
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
``` sh
check_jitter - A Nagios compatible plugin that measures network jitter.
AGGREGATION METHOD
The plugin can aggregate the deltas from multiple samples in the following ways:
- average: the average of all deltas (arithmetic mean) [default]
- median: the median of all deltas
- max: the maximum of all deltas
- min: the minimum of all deltas
SAMPLES
The number of pings to send to the target host. Must be greater than 2.
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:
+------------------+-------------------------------------------------+
| 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:
-a, --aggregation-method <AGGREGATION_METHOD>
Aggregation method to use for multiple samples [default: average]
-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](https://github.com/johanthoren/check_jitter/releases/latest).
Use together with NRPE or similar, preferably with
[Opsview](https://www.itrsgroup.com/products/infrastructure-monitoring).
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.