Icinga Plugins¶
Below you will find a documentation for every single available plugin provided by this repository. Most of the plugins allow the usage of default Icinga threshold range handling, which is defined as follows:
Argument | Throws error on | Ok range |
---|---|---|
20 | < 0 or > 20 | 0 .. 20 |
20: | < 20 | between 20 .. ∞ |
~:20 | > 20 | between -∞ .. 20 |
30:40 | < 30 or > 40 | between {30 .. 40} |
`@30:40 | ≥ 30 and ≤ 40 | outside -∞ .. 29 and 41 .. ∞ |
Please ensure that you will escape the @
if you are configuring it on the Icinga side. To do so, you will simply have to write an ` before the @
symbol: `@
To test thresholds with different input values, you can use the Framework Cmdlet Get-IcingaHelpThresholds
.
Each plugin ships with a constant Framework argument -ThresholdInterval
. This can be used to modify the value your thresholds are compared against from the current, fetched value to one collected over time by the Icinga for Windows daemon. In case you Collect Metrics Over Time for specific time intervals, you can for example set the argument to 15m
to get the average value of 15m as base for your monitoring values. Please note that in this example, you will require to have collected the 15m
average for Invoke-IcingaCheckCPU
.
icinga> icinga { Invoke-IcingaCheckCPU -Warning 20 -Critical 40 -Core _Total -ThresholdInterval 15m }
[WARNING] CPU Load: [WARNING] Core Total (29,14817700%)
\_ [WARNING] Core Total: 29,14817700% is greater than threshold 20% (15m avg.)
| 'core_total_1'=31.545677%;;;0;100 'core_total_15'=29.148177%;20;40;0;100 'core_total_5'=28.827410%;;;0;100 'core_total_20'=30.032942%;;;0;100 'core_total_3'=27.731669%;;;0;100 'core_total'=33.87817%;;;0;100
Plugin Name | Description |
---|---|
Invoke-IcingaCheckUsedPartitionSpace | Checks how much space on a partition is used. |
Invoke-IcingaCheckScheduledTask | Checks the current state for a list of specified tasks based on their name and prints the result |
Invoke-IcingaCheckBiosSerial | Finds out the Bios Serial |
Invoke-IcingaCheckEventlog | Checks how many eventlog occurrences of a given type there are. |
Invoke-IcingaCheckHttpJsonResponse | Retrieves a JSON-Object via Request and performs desired checks |
Invoke-IcingaCheckNetworkInterface | Checks availability, state and Usage of Network interfaces and Interface Teams |
Invoke-IcingaCheckProcessCount | Checks how many processes of a process exist. |
Invoke-IcingaCheckUsers | Checks how many users are logged on to the host |
Invoke-IcingaCheckService | Checks if defined services have a specific status or checks for all automatic services and if they are running and have not been terminated with exit code 0 |
Invoke-IcingaCheckCPU | Checks cpu usage of cores. |
Invoke-IcingaCheckUNCPath | Checks a given path / unc path and determines the size of the volume including free space |
Invoke-IcingaCheckUpdates | Checks how many updates are to be applied |
Invoke-IcingaCheckTimeSync | Gets Network Time Protocol time(SMTP/NTP) from a specified server |
Invoke-IcingaCheckDiskHealth | Checks availability, state and utilization of the physical hard disk |
Invoke-IcingaCheckTCP | Checks the connection for an address and a range of ports and fetches the connection status including the time require to connect. |
Invoke-IcingaCheckHTTPStatus | Checks the response time, the return code and content of HTTP requests. |
Invoke-IcingaCheckFirewall | Checks whether a firewall module is enabled or not |
Invoke-IcingaCheckPerfcounter | Performs checks on various performance counter |
Invoke-IcingaCheckMemory | Checks on memory usage |
Invoke-IcingaCheckUptime | Checks how long a Windows system has been up for. |
Invoke-IcingaCheckCheckSum | Checks hash against file hash of a file |
Invoke-IcingaCheckMPIO | Monitors the number of paths for each MPIO driver on your system. |
Invoke-IcingaCheckNLA | Checks whether the network location awareness(NLA) found the correct firewall profile for a given network adapter |
Invoke-IcingaCheckICMP | Checks via ICMP requests to a target destination for response time and availability |
Invoke-IcingaCheckCertificate | Check whether a certificate is still trusted and when it runs out or starts. |
Invoke-IcingaCheckStoragePool | Checks availability, utilization and state of a StoragePool. |
Invoke-IcingaCheckDirectory | Checks for amount of files within a directory depending on the set filters |
Invoke-IcingaCheckProcess | A plugin to check thread, cpu, memory and pagefile usage for each single process |