A feature that used to work suddenly broke. The problem? There were 300 commits since the last time I knew it worked. Checking each commit manually would take forever. Fortunately, Git has a tool...
How to Use Git Bisect to Pinpoint Bugs Precisely
A feature that used to work suddenly broke. The problem? There were 300 commits since the last time I knew it worked. Checking each commit manually would take forever. Fortunately, Git has a tool...
Syncing LDAP Users & Groups with the Icinga Notifications Web API
If you're running Icinga in a mid-to-large organization, chances are your users and teams are already defined in LDAP or Active Directory. Manually re-creating contacts and contact groups in Icinga Notifications Web is tedious and error-prone, but thankfully, it...
How to undo Git reset hard?
You just finished a long interactive rebase. You hit enter. Your commit history looks… wrong. There is a bunch of things that could go wrong: messed up an interactive rebase accidentally ran git reset --hard merged the wrong branch rebased onto the wrong base You...
Tutorial Videos on How to write your own Icinga Web module on YouTube!
Have you ever wanted to extend the functionality of Icinga Web to suit your specific needs, but didn't know where to start? Well, you're in luck! Last week, we released a series of tutorial videos on YouTube, hosted by Markus Opolka, Senior Consultant at NETWAYS,...
Icinga 2 API and debug console
Have you ever experienced configuration issues, such as notifications not being sent as expected or apply rules not matching all expected objects, probably due to an incorrectly set custom variable? Icinga 2 has several options to assist you in such situations. Last...
IPL: How to use ipl-web
In my ongoing blogpost series about the Icinga PHP library, I am briefly explaining what the individual components of this library do and how easily you can use them in your project. In my previous blog post, i already covered the ipl-html and explained how easy it is...
Icinga 2 API with Let’s Encrypt certificates, just for fun
In our community forum Michael already outlined the possibility to operate Icinga 2 with an external certification authority, not the one Icinga 2 generates by itself. Thomas, one of our NETWAYS colleagues, reported his experience in that field: in short, it's easy to...
IPL: How to use ipl-stdlib and ipl-i18n
In my previous blogpost, I explained how easy it is to validate forms with the ipl-validator. Today we will talk about the following two very useful libraries: Ipl-stdlib: All our libraries are based on this library. It provides many useful features like string...
Migrating to Icinga DB
Although Icinga DB has been around for some time and many customers and users are already using it, there may still be some who are wondering how to upgrade/migrate to Icinga DB. This post will briefly explain the components of the Icinga DB and how to install them in...
Mapping Hostnames to Locations with Icinga Director – A Step-by-Step Guide
Recently I came across the Maps module build and maintained by our community. The module displays host objects and annotations on openstreetmap using the JavaScript library leaflet.js. The module reads the coordinates for each host from custom variables and is able to...
How to resolve circular dependency in Icinga2
We recently announced the general availability of Icinga 2.14, which most of you might have noticed, and with that in mind, I'd like to show you how you can easily troubleshoot and eliminate some of the dependencies headaches known as the dependency cycle. What does...
CSS doesn’t need to be ugly
Ever looked at some CSS and your first instinct was to close the editor and never look at it again? I did. Though, I don't have the luxury to close the editor in such a case, as is probably often the case for others as well. Code grows with time and so do bad...
Subscribe to our Newsletter
A monthly digest of the latest Icinga news, releases, articles and community topics.








