Today we are happy to announce that we released Icinga for Windows v1.13.0 a couple of days ago. We have already talked about the changes coming to v1.13.0 with the beta blog-post last year in more depth, and will focus only on some core changes here.
Improved Performance
With the latest Icinga for Windows release, we have focused on improving the performance while executing checks and generating performance data. These new changes are especially visible by running checks that print plenty of performance metrics, like Hyper-V checks. Those plugins can see a performance improvement by up to 10 seconds or even more, depending on the environment.
In addition we have removed plenty of overhead on how plugins are executed, thresholds are resolved and evaluated, to keep the overall performance footprint on the system as low as possible.
While all these changes are significant on it’s own, we have also re-written the Metrics over Time feature from scratch. The memory impact is way smaller and the collection as well as usage of the metrics costs less performance than before. For the monitoring itself there is no change on the usage, we did however remove the metrics over time performance data from the plugin output. Those metrics are mostly not needed in any graphing solution and just caused needles overhead.
Process Affinity
With the new Icinga for Windows version, we also applied a change on the native Icinga for Windows and JEA-Session handling. The powershell.exe (wsmprovhost.exe for JEA) will now use the “Below Normal” processor affinity while being executed.
This change is very important for systems with only small amount of CPU cores and threads, as Windows will now priorities other tasks over the Icinga for Windows check execution in case the system is loaded by 100%. By doing so, we ensure that the monitoring is still effective, while it is still in a smooth operating state and no lagging or systems freezes occurr when you execute 20 checks at the same time on two core system.
New IIS-Plugins
With the new Icinga for Windows version, we also released the v1.0.0 of our new IIS-Plugins. Currenly there are two plugins available for the independent plugin package:
- Invoke-IcingaCheckIISHealth
- Invoke-IcingaCheckIISAppPoolHealth
The health plugin will check if the IIS is installed and the service is running, while the AppPool-Health plugin will allow a very deep monitoring of the running AppPools, the CPU, Memory and Thread usage as well as if their process is running.
After collecting some additional feedback after the release, we will extend the general IIS-Health plugin to consider more possible IIS-Services as well as limit the requirements for the plugin to work. This will be done with a later release.
That’s it!
While this release with all testing and collecting feedback took way longer than anticipated, we are in general very happy with the result and the contribution we had. We would like to keep this approach with the upcoming Icinga for Windows releases, to improve our workflows and release cycles.
At this point we will monitor the feedback once the Icinga for Windows v1.13.0 installations are more wide spread and will focus on more improved stability, performance and bugfix releases next. There are still plenty of open issues which we want to address and either provide fixes for or to ensure a better usability.
Just stay tuned for the upcoming changes!