NETGEAR Monitoring Plugin for Icinga
Table of Contents
About
The NETGEAR Monitoring Plugin is a lightweight Go-based command-line tool designed to collect and report hardware and network metrics from NETGEAR devices via their API. It provides output using go-check, allowing easy integration into Icinga 2 checks. Important: This plugin is intended only for use with NETGEAR AV Line devices. Use with other devices is not supported and may produce incorrect results.
Features
- Fetch and report:
- CPU usage
- RAM usage
- Fan speed
- Temperature sensors
- Port statistics (inbound and outbound)
- PoE statistics (enabled state and current power)
- Icinga-compatible check results with perfdata
-
Configurable output via command-line flags
License
This plugin is released under the MIT License.
See the included LICENSE file for full details.
This plugin uses the following third-party components:
- go-check — MIT License
- spf13/pflag — BSD License
Documentation
Installation
- Ensure you have Go installed (1.20 or newer).
- Clone this repository and build the plugin:
git clone https://git.icinga.com/obarbashyn/netgear-icinga-plugin.git cd netgear-icinga-plugin - The binary to deploy is located in bin/check-netgear
Required Flags
-u,--username— Username for API login-p,--password— Password for API login
Optional Flags
-H,--hostname— Device hostname or IP (default: http://192.168.112.19)--mode— Modes to display: basic, ports, poe (default: basic)--port— List of port numbers to check (default: 1–8)--nocpu— Hide CPU info--noram— Hide RAM info--notemp— Hide temperature info--nofans— Hide fans info-h,--help— Show help message
Example
check_netgear -u admin -p VerySecurePassword --mode basic
Output Example
[WARNING] Device Info: Uptime - 1 days, 0 hrs, 31 mins, 29 secs
\_ [OK] CPU Usage: 7.13%
\_ [OK] RAM Usage: 32.46%
\_ [OK] Temperature
\_ [OK] sensor-System1: 44.0°C
\_ [OK] sensor-MAC: 47.0°C
\_ [OK] sensor-System2: 45.0°C
\_ [WARNING] Fans
\_ [WARNING] FAN-1: 0 RPM
|CPU=7.13;;;0;100 RAM=32.46;;;0;100 sensor-System1=44;;;0 sensor-MAC=47;;;0 sensor-System2=45;;;0 'Fans speed'=0;;;0
Support
For questions, suggestions, or issues, please reach out through the Icinga community channels or open an issue in the project repository.
Requirements
Go 1.20 or higher Icinga 2
Thanks
Special thanks to the NETWAYS team for the go-check library.
Contributing
Contributions are welcome! You can help by:
- Submitting bug fixes
- Testing on different NETGEAR devices
- Improving documentation or examples