I’ve been asked to add a jitter measurement to some remote endpoint devices we monitor for customers but don’t have local resources/nodes.
Looking for some advice on approaches. I would prefer to leverage existing items where possible with forward compatibility being desired.
Currently, we’re using CheckMK 2.3 CME edition but will be going to 2.4 next quarter (migrating some deprecated items first).
It looks like the native “Check hosts with PING (ICMP Echo Request)” AKA checkmk_icmp includes a jitter and MOS parameter that works but is not a configurable option in the weUI.
$ /opt/omd/versions/2.3.0p38.cme/lib/nagios/plugins/check_icmp --help
Copyright (c) 2005 Andreas Ericsson <ae@op5.se>
Copyright (c) 2005-2008 Monitoring Plugins Development Team
<devel@monitoring-plugins.org>
Usage:
check_icmp [options] [-H] host1 host2 hostN
Options:
-J
jitter mode warning,critical, ex. 40.000ms,50.000ms , unit in ms
-M
MOS mode, between 0 and 4.4 warning,critical, ex. 3.5,3.0
Standard check (manual)
$ /opt/omd/versions/2.3.0p38.cme/lib/nagios/plugins/check_icmp -n 6 -t 20 -w 1500.00,80.00% -c 3000.00,100.00% 10.254.1.11
OK - 10.254.1.11 rta 3.640ms lost 0%|rta=3.640ms;1500.000;3000.000;0; rtmax=5.910ms;;;; rtmin=0.000ms;;;; pl=0%;80;100;0;100
Adding -J or -M works as long as you include -R otherwise it doesn’t include the RTA/min/max.
$ /opt/omd/versions/2.3.0p38.cme/lib/nagios/plugins/check_icmp -n 6 -t 20 -R 100ms,200ms -M 3.5,3.0 -w 1500.000,80% -c 3000.000,100% -J 40.000,50.000 10.254.1.1
OK - 10.254.1.1 rta 3.426ms jitter 0.983ms MOS 4.4|rta=3.426ms;1500.000;3000.000;0; rtmax=4.942ms;;;; rtmin=0.000ms;;;; jitter_avg=0.983ms;40.000;50.000;0; jitter_max=2.097ms;;;; jitter_min=0.147ms;;;; mos=4.4;3.5;3.0;0;5
I’ve tested several approaches including:
- Quick and dirty use “Integrate Nagios plug-ins” and setup a service PING with the for the service name but this requires manual thresholds
check_icmp -n 6 -t 20 -R 100ms,200ms -M 3.5,3.0 -w 1500.000,80% -c 3000.000,100% -J 40.000,50.000 $_HOSTADDRESS_4$ - Extending the native check but don’t know how I would safely do this. Various attempts to ‘augment’ the UI options and server_side_calls with override files did not work as intended. Not even sure this is possible or recommended.
- A custom agent along the lines of an alternate “Check hosts with PING plus jitter (ICMP Echo Request)” approach but I haven’t been able to get that working either.
Any thoughts or advice if someone has done something like this?
Sincerely,
Scotsie