1
0
mirror of https://github.com/c-kr/check_json.git synced 2024-11-23 10:53:47 +01:00
Go to file
Shaun S 0ce9e7d42e fix error if warning and/or critical not defined
Since warning and critical are not required params, we should check to see if they are defined first before looping over them.  Otherwise, we get an error in the output.
2017-05-05 16:20:19 -07:00
check_json.pl fix error if warning and/or critical not defined 2017-05-05 16:20:19 -07:00
icingaexchange.yml fix icingaexchange.yml 2015-11-28 17:56:25 +01:00
README.md Update README.md 2015-08-26 14:38:28 -07:00

check_json

Nagios plugin to check JSON attributes via http(s).

This Plugin is a fork of the existing JSON Plugin from https://github.com/bbuchalter/check_json with the enhancements of using the Nagios::Plugin Perl Module, allowing to use thresholds and performance data collection from various json attributes.

Performance data is also enhanced to extract performance data compliant to Nagios and Graphite standards. One attribute is selected for thresholds check, multiple others can be added for extracting performance data. This plugin is aimed at simplifying Nagios, Icinga & Icinga2 polling of JSON status APIs.

Usage:

check_json -u|--url <URL> -a|--attribute <attribute> [ -c|--critical <threshold> ] [ -w|--warning <threshold> ] [ -p|--perfvars <fields> ] [ -o|--outputvars <fields> ] [ -t|--timeout <timeout> ] [ -d|--divisor <divisor> ] [ -T|--contenttype <content-type> ] [ --ignoressl ] [ -h|--help ]

Example:

./check_json.pl --url http://192.168.5.10:9332/local_stats --attribute '{shares}->{dead_shares}' --warning :5 --critical :10 --perfvars '{shares}->{dead_shares},{shares}->{live_shares},{clients}->{clients_connected}'

Result:

Check JSON status API OK - dead_shares: 2, live_shares: 12, clients_connected: 234 | dead_shares=2;5;10 live_shares=12 clients_connected=234

Requirements

Perl JSON package

  • Debian / Ubuntu : libjson-perl libnagios-plugin-perl libwww-perl