Releasing Icinga Business Process Modeling v2.5

by | Oct 17, 2023

Today we’re announcing the general availability of Icinga Business Process Modeling v2.5.0.

You can find all issues related to this release on our Roadmap.

A Browser’s Nemesis

Since the very beginning, Icinga Business Process Modeling provides the possibility to easily add existing hosts and services to a process. Though, this had a particular drawback if an environment had a large number of objects. The objects needed to be chosen from a simple selection box and a high number of entries caused some browsers to hang or even crash. A community contribution then added an alternative way of adding objects. But that had a drawback as well, as it wasn’t assisted in any way. You had to provide a filter, defined manually, which then just pre-filtered the same selection box.

Now, with the advent of the search bar in Icinga DB Web, we have the possibility to solve this properly and so we did. It is now possible to add objects by searching for them using keywords (names, custom variables, groups, contacts and so on). It’s still not a dynamic definition, i.e. the resulting objects are part of the configuration (not the filter), but at least adding new objects is easier than before and browsers don’t have to worry anymore.

  • Usability improvements for very large systems #295

Extended Business Detail

Those who integrated their process configuration in Icinga by use of the check builtin into the module, are familiar with the output which contains an optional tree of the node being checked. This shows the state the node and it’s children had when the check was run.  Thanks to a community contribution, the current state of the node’s children is now also visible if you take a look at the check in Icinga Web. You can of course also show them using the tree view mode. Be sure to check the documentation on this in the Monitoring section.

  • IcingaDB/Monitoring Detail view integration #333

Other New Features

Some may like to hear that a new operator has been added. The XOR operator. What was already possible with some logical shenanigans, is now an alternative to other operators you’re accustomed to. It is now also possible to temporarily sort nodes differently than what the configuration defines. You can now sort after the node status and node name, change the direction and even do the same if the order has been manually adjusted. If you collapsed specific branches in the tree view, these are now preserved across sessions in the same browser.

  • New operand XOR #206
  • Possibility to sort nodes temporarily different #252
  • Remember collapsed tree branches through multiple browser/page sessions #254

Enhanced Status Awareness

The tile view already shows if a node is handled or not, by using a lighter state color. But the reason for this wasn’t visible. Now an icon is shown showing exactly why. If you add a configuration to the menu, the overall state is now also visible right away as a status badge is being rendered beside it. If you remove objects from your environment, you previously had to manually clean them up in any process configuration they are referenced. This can now be done with a single click in the UI and by using the new icingacli businessprocess cleanup command.

  • Include indicator for Downtime/ACK in TileRenderer #237
  • Show critical count in the left menu if a BP is critical #246
  • Possibility to cleanup orphaned nodes #222

Compatibility with Icinga DB

..was not fully the case. Now it is. The shown status of an object is the same as visible in Icinga DB Web. Checking a process, containing such an object, now also uses the most recent state. In general, using the Icinga DB backend, loading a configuration in the UI took more time than previously. This is now fixed and there should be no difference anymore. Another difference, that is gone now, is that objects a user has no access to are now visible again while looking at them in Icinga Business Process Modeling’s interface.

  • Apply state data from redis #396
  • BP module very slow with IcingaDB #343
  • Services in BPs are not shown anymore for filtered roles (missing nodes) #345

Graceful Handling of Faulty Configs

If you have a configuration that is somehow invalid, the overview doesn’t break anymore now. Instead the configuration is just not accessible. One reason why this could even be the case, was that any description with multiple paragraphs was incorrectly stored. Defining such a description now, doesn’t break the configuration anymore. Another cause were objects with semicolons in their name. Adding such an object to a process, is now also possible without breaking the configuration.

  • One missconfigured BPM fails all other BPMs too #370
  • Newlines in description break the BP configuration #311
  • Parse Error when adding a node with semicolon in the varname #312

Last But Not Least

PHP 8.2 is now supported. As is the use of the Content-Security-Policy introduced with Icinga Web v2.12.0.

  • Support for PHP 8.2 #403
  • CSP: Avoid inline CSS #390

It’s a Package!

Icinga provides official packages for Icinga Business Process Modeling now. Just remove the current installation and install the icinga-businessprocess package.

You May Also Like…

Subscribe to our Newsletter

A monthly digest of the latest Icinga news, releases, articles and community topics.