This is the main readme file for the health montiroing plugins project. In this project we pubish all our plugins we write for icinga / nagios. The plugins are provided on pypi as python package.
All plugins are released under the GPLv2.
A detailed description can be found in the README in the doc folder.
Monitor the jobs in the Jenkins job queue
Check the local CPU temperature without the usage of "lm-sensors"
Monitor Fortinet Wifi Controllers via SNMP
Monitor HP / Aruba procurve switches via SNMP
Monitor an UPS from APC via SNMP.
Monitor an UPS from Eaton via SNMP. Requires the built in Eaton network card.
Check the status of the CROSS TECHNOLOGIES redundancy controller 2082-141. Implemented against MIB 2082-141.mib
Check the Meinberg NTP server LANTIME M300.
The plugin checks the current ntp and gps state, shows the current gps position and checks the good satellites. Tested with firmware version 5.30 and 6.18 (NG).
Check the status of a Moxa NPORT 6000 RS232 to LAN converter.
You can check each port for the CTS, DSR, DTR and Error count.
This plugin checks the health of HP servers with iLo 4 interface via SNMP.
Check the status of a Janitza 604 device.
Check the used / free disk space of a device via SNMP (using the HOST-RESOURCES-MIB hrStorageSize). There are already script doing that like http://nagios.manubulon.com/snmp_storage.html . But these check script have a big problem with large storage systems.
Check the status of a tcp/udp port via SNMP. For TCP ports also the status is checked (e.g listen, established).
Check a Raritan Dominition PX PDU (Power Distribution Unit):
- outlets (On, Off)
- inlet (Power, Current, Voltage)
- connected sensors
Icinga / Nagios plugin to check if a Windows service is in running state via SNMP.
This plugin compares the time of the icinga/nagios machine with the time of a remote device.
This plugin checks the health of Dell iDRAC.
This plugin checks the health of Teledyn Paradise Datacom Sattelite Modem.
Check the status of a Ubiquiti airMax device.
Check the status of a Microwave Modem
Check the status of a Newtec Modem
Check the status of a Cambium PTP 700 radio
Check the status of a ePowerSwitches (8XM+).
The complete plugin package is available at PyPI
If your Linux machine is directly connected to the internet, you can use pip to install the package. Just run:
pip install health_monitoring_plugins
The plugins will be installed in your PATH. So the scripts can be executed directly.
If you are behind a firewall or not connected to the internet, you can download the tar.hz from PyPI and install it with
health_monitoring_plugins-<version>.tar.gz
To uninstall the package you can run:
pip uninstall health_monitoring_plugins
You can download the source package from [PyPI] (https://pypi.python.org/pypi/health_monitoring_plugins) or just clone this repository. To run setup.py you will need the python-setuptools.
To install the package from source with setup.py, you can run
tar xfvz health_monitoring_plugins-<version>.tar.gz
cd health_monitoring_plugins
python setup.py install
To run the unittests just execute:
python setup.py test
The unittests require pytest. For the unittests we use the testagent from haxtibal.
When calling the plugin, I receive an error like "ImportError: No module named health_monitoring_plugins.raritan"
Seems that you did not install the python package. The plugins can not be called directly. Check the Installation section.
"Workaround:"
PYTHONPATH=~/PycharmProjects/health_monitoring_plugins/ health_monitoring_plugins/check_snmp_raritan/check_snmp_raritan.py
- Refactoring of Moxa plugin
- Refactoring of APC plugin
- Migrate from netsnmp to pysnmp for plugins
- Remove obsolete plugins
- Python 3 support
- Refactoring of tests (remove netsnmp)
- Fixed some exit codes for check_snmo_idrac, check_snmp_ilo, check_snmp_meinberg and check_snmp_procurve
- Fixed issue with multiple inheritance (#20)
- Updated license notices according https://www.gnu.org/licenses/gpl-howto.html
- Preparations for Python3:
- Refactored check_snmp_large_storage
- Refactored check_snmp_service
- Refactored check_snmp_port
- Refactored check_snmp_time2
- Refactoring of iLo plugin
- Refactored check_snmp_procurve.py
- Refactored check_snmp_eaton_ups.py
- Removed check that are not compatible with 9SX series
- Small fixes and PEP 8 improvements
- Added check_snmp_eps_plus
- Added check_snmp_cambium_ptp700
- Improved snmp exception handling
- Added --snmptimeout parameter
- iDrac plugin shows now "warning" instead of "nonCritical"
- Added check_local_cpu_temp.py
- check_snmp_ilo4:
- Fixed snmp v2 community 4 (thanks to nb85)
- Added SNMPv3 support to all plugins for devices supporting SNMPv3
- Added common test for SNMPv3.
- PEP8 & general code improvements
- check_snmp_raritan:
- Fixed exception in check_snmp_raritan if sensor does not return a valid value.
- Moved units in metrics from UOM to label to avoid conflicts with Graphite
- check_snmp_eaton:
- Added support of Eaton 9SX series
- Changed threshold options for check_snmp_eaton_ups
- Refactored check_meinberg_ntp plugin
- check_snmp_idrac:
- Refactoring
- Added noPowerRedundancy option (thanks to ironbishop)
- Fixed snmp v2 community
- Added check_microwavemodem
- Added check_newtecmodem
- Migration from github to codeberg
- Added check_snmp_instadios_csm
- Added SNMPv3 support for check_snmp_idrac
- Fixed some bugs in check_snmp_idrac (error if sever is powered off or if the power supply is not redundant)
- Added check_snmp_fortinet
- Added check_jenkins_api
- Added check_snmp_procurve
- Added check_snmp_lband
- Added check_snmp_eaton_ups
- Added check_snmp_apc_ups
- Several bugfixes and code improvements
- Fixed segfault, if there is no route to host
-
Added check_snmp_teledyne, check_snmp_janitza, check_snmp_ubiquiti
-
Several bugfixes
-
Fixed bug in check_snmp_time2
-
Added check_snmp_idrac
- Several bugfixes and code cleanup
- Several bugfixes and code cleanup
- Added unittests for all plugins
- Fixed a bug in check_snmp_raritan Inlet check
- Cleaned up some parts of the code
- Better package structure
- The first testing release including all developed check plugins