Skip to content

Preparations

Choose your Editor

Icinga 2 can be developed with your favorite editor. Icinga developers prefer these tools:

  • vim
  • CLion (macOS, Linux)
  • MS Visual Studio (Windows)
  • Atom

Editors differ on the functionality. The more helpers you get for C++ development, the faster your development workflow will be.

Get to know the architecture

Icinga 2 can run standalone or in distributed environments. It contains a whole lot more than a simple check execution engine.

Read more about it in the Technical Concepts chapter.

Get to know the code

First off, you really need to know C++ and portions of C++11 and the boost libraries. Best is to start with a book or online tutorial to get into the basics. Icinga developers gained their knowledge through studies, training and self-teaching code by trying it out and asking senior developers for guidance.

Here’s a few books we can recommend:

In addition, it is a good bet to also know SQL when diving into backend development.

Last but not least, if you are developing on Windows, get to know the internals about services and the Win32 API.