Icinga PowerShell Plugins

A collection of Windows check plugins for the Icinga PowerShell Framework

Release Icinga PowerShell Plugins v1.6.0 latest

1.6.0 (2021-09-07)

Issue and PRs


  • #224 Fixes Invoke-IcingaCheckUsedPartitionSpace label names, which might have caused conflicts with Graphite/InfluxDB, because of changed metric unit
  • #226 Fixes class names of Add-Type for Get-IcingaDiskAttributes and Get-IcingaUNCPathSize and adds checks if the class was already added inside the session


  • #208 Adds additional features to Invoke-IcingaCheckScheduledTask, allowing to monitor exit codes, missed runs and last/next run time of a task
  • #217 Adds feature for Invoke-IcingaCheckPerfCounter with new switch -IgnoreEmptyChecks to change the output from UNKNOWN to OK, in case no performance counters were found
  • #222 Replaces Get-FileHash with own implementation as Get-IcingaFileHash, to work with new JEA integration
  • #223 Removes the function Get-IcingaServices, as this function has been moved to the Icinga PowerShell Framework
  • #225 Adds support for plugins to work in JEA context


Release tarball
application/gzip 2021-09-06 Download from Github

Release Icinga PowerShell Plugins v1.5.1

1.5.1 (2021-07-07)

Issue and PRs


  • #196 Fixes unhandled PermissionDenied exceptions for Invoke-IcingaCheckDirectory, in case required permissions for files and folders were not set
  • #202 Fixes \ and / which are now removed again for -Include and -Exclude arrays on Invoke-IcingaCheckUsedPartitionSpace.


Release tarball
application/gzip 2021-07-07 Download from Github

Release Icinga PowerShell Plugins v1.5.0

1.5.0 (2021-06-02)

Issue and PRs

Upgrading Steps

Reworked plugins and removed arguments

Please note that in general plugins should no longer ship % values performance data and only the actually values including thresholds and min/max input. With the new Icinga for Windows Framework, you can use your graphing solution to properly calculate % values there on your own for display context. Monitoring is for most plugins possible, by simply adding a % sign behind your threshold.

In case the plugin does not support this input for this specify argument, you will receive a UNKNOWN output.


The following arguments have been removed from the plugin and are no longer usable:

  • IncomingAvgBandUsageWarn
  • IncomingAvgBandUsageCrit
  • OutboundAvgBandUsageWarn
  • OutboundAvgBandUsageCrit

These arguments were a % value based on the link speed and the current traffic of the interface. With the new argument handling for % values with Icinga for Windows v1.5.0, you can achieve the same result with the following, already present arguments:

  • DeviceTotalBytesSecWarn
  • DeviceTotalBytesSecCrit
  • DeviceSentBytesSecWarn
  • DeviceSentBytesSecCrit
  • DeviceReceivedBytesSecWarn
  • DeviceReceivedBytesSecCrit

We entirely reworked the plugin and added the same % value shipping with Icinga for Windows v1.5.0, which means we removed the following arguments:

  • PercentWarning
  • PercentCritical

In addition we added page file monitoring capabilities to the plugin with additional arguments


As for both previous plugins, we reworked used partition space with changes for % values with Icinga for Windows 1.5.0 and fixed minor issues from the ground up.


We fixed a spelling issue on the command itself, which was Invoke-IcingaCheckPerfcounter before and now properly displays Invoke-IcingaCheckPerfCounter. For that reason your current plugin configuration will change. To resolve this beforehand, rename the custom variable within your Icinga Director to match the new uppercase C for Counter, before importing new configuration baskets.

Features and Updates

New Plugins


#163 Checks the response time, the return code and content of HTTP requests.


#172 Checks the number of paths for each MPIO driver on your system.

Reworked Plugins

Please have a look on the upgrading docs for these plugins

  • Invoke-IcingaCheckNetworkInterface
  • Invoke-IcingaCheckMemory
  • Invoke-IcingaCheckUsedPartitionSpace


  • #14 Rework of Invoke-IcingaCheckMemory to use new features from 1.5.0 for % handling and added page file check content including arguments. Please have a look on the upgrading docs
  • #71 Rework Invoke-IcingaCheckUsedPartitionSpace to properly use Framework v1.5.0 functionality and resolve upper/lower case drive filtering
  • #156 Adds feature to modify the output status of Invoke-IcingaCheckCertificate from UNKNOWN to OK in case no certificate was found by setting the new argument -IgnoreEmpty
  • #159 Replaces the deprecated function Get-EventLog with Get-WinEvent. In addition, the plugin received a new argument -MaxEntries to allow additional filtering for the number of events fetched to improve performance in addition. The EventLog now also supports an array with list items, allowing easier filtering for severities which are allowed inside the EventLog.
  • #167 Upgrades plugin configuration files to Framework version 1.5.0. Please have a look on the upgrading docs
  • #181 Improves the handling for the Network Interface plugin and moves the Get-IcingaNetworkInterfaceUnits from the plugin repository into the Framework


  • #144 Fixes filtering for Invoke-IcingaCheckEventLog which resulted in wrong results, depending on the plugin configuration
  • #147 Fixes wrong comparison for file size on Get-IcingaDirectorySizeSmallerThan, used by Invoke-IcingaCheckDirectory
  • #148 Fixes exception on Invoke-CheckNetworkInterface while two team interfaces with the identical name are present on the system
  • #154 Fixes Invoke-IcingaCheckDirectory by setting -FileNames argument to * as default for allowing to fetch all files for a given directory by default
  • #160 While filtering for certain services with Get-IcingaServices, there were some attributes missing from the collection. These are now added resulting in always correct output data.
  • #161 Fixes a copy & paste error on Invoke-IcingaCheckUsedPartitionSpace, as a wrong check variable was used for forcing Unknown results
  • #171 Fixes wrong OK states for Invoke-IcingaCheckPerfCounter, in case counters for categories with instances were not present
  • #176 Fixes offset calculation for Invoke-IcingaCheckTimeSync, to allow negative offset as well
  • #178 Fixes exception handling for Invoke-IcingaCheckNLA to properly handle errors while checking for connection profiles
  • #185 Fixes Network interface percent for teams not working
  • #186 Fixes possible exception on Icinga for Windows installation, if plugins were removed, no new shell session was created and therefor plugins are not able to load


Release tarball
application/gzip 2021-06-02 Download from Github
Newer Older