The core of our monitoring platform with a powerful configuration language and REST API.
Go to file
Julian Brost e87e1ea73f Freeze globals namespace during config load
This allows for a faster config load due to less locking required.

The change is slightly backwards-incompatible. Before, you could manipulate the
globals namespace at a later stage, but disallowing this feels reasonable for
the performance benefit alone (which especially shows on many-core machines).
Apart from that, it's doubtful if doing so is even useful at all as the DSL
provides no mechanism for you to synchronize your operations that may run in
parallel. The data structures itself are protected from race conditions, but
anything implemented on top of this may still be subject to race conditions.
And even if some user has a good reason for doing this, there's a feasible
workaround by creating your own namespace like globals.mutable and using that
instead.
2023-03-30 18:07:51 +02:00
.github GHA: build Icinga 2 from source 2023-01-31 10:21:22 +01:00
agent Windows agent: Default to lower case FQDN 2020-11-02 14:08:56 +01:00
choco
cmake
doc CMakeLists.txt: provide sane defaults for which subsystems to build 2023-02-23 14:54:57 +01:00
etc icinga2.service: depend on icingadb-redis.service if any 2022-01-31 17:03:34 +01:00
icinga-app Handle errors when evaluating --define 2023-02-01 09:30:49 +01:00
icinga-installer Windows: automatically migrate from mainlog to windowseventlog 2021-06-21 15:15:54 +02:00
itl Merge pull request #9642 from Icinga/9486a 2023-01-27 22:22:24 +01:00
lib Freeze globals namespace during config load 2023-03-30 18:07:51 +02:00
plugins Fix compiler warnings don't move local variables 2022-02-22 17:51:43 +01:00
test Checkable: Add test for state notifications after a suppression ends 2022-03-03 14:25:23 +01:00
third-party Update third-party/nlohmann_json to v3.9.1 2023-02-14 16:19:44 +01:00
tools CMakeLists.txt: provide sane defaults for which subsystems to build 2023-02-23 14:54:57 +01:00
.gitattributes
.gitignore
.mailmap Update .mailmap 2022-08-26 09:48:09 +02:00
AUTHORS Update AUTHORS 2023-01-27 16:00:14 +00:00
CHANGELOG.md CHANGELOG.md: add v2.13.7 2023-02-16 16:12:11 +00:00
CMakeLists.txt Don't include perfdata writers on Windows 2023-02-23 16:03:57 +01:00
CONTRIBUTING.md Docs: enable syntax highlighting 2020-12-09 12:32:09 +01:00
COPYING
ICINGA2_VERSION Increase VERSION file 2021-07-30 14:52:58 +02:00
NEWS
README.md README.md: remove misleading badge 2021-08-05 11:41:57 +02:00
RELEASE.md GHA: handle changed interface of Icinga/docker-icinga2 2023-01-16 17:38:32 +01:00
config.h.cmake Use backtrace_symbols() when printing stack traces on FreeBSD 2021-03-01 14:07:09 +01:00
icinga-spec-version.h.cmake
icinga-version.h.cmake
mkdocs.yml

README.md

Github Tag

Icinga 2

Icinga Logo

Table of Contents

  1. About
  2. Installation
  3. Documentation
  4. Support
  5. License
  6. Contributing

About

Icinga is a monitoring system which checks the availability of your network resources, notifies users of outages, and generates performance data for reporting.

Scalable and extensible, Icinga can monitor large, complex environments across multiple locations.

Icinga 2 is the monitoring server and requires Icinga Web 2 on top in your Icinga Stack. The configuration can be easily managed with either the Icinga Director, config management tools or plain text within the Icinga DSL.

Icinga Dashboard

Installation

Once Icinga Server and Web are running in your distributed environment, make sure to check out the many Icinga modules for even better monitoring.

Documentation

The documentation is available on icinga.com/docs.

Support

Check the project website for status updates. Join the community channels for questions or ask an Icinga partner for professional support.

License

Icinga 2 and the Icinga 2 documentation are licensed under the terms of the GNU General Public License Version 2, you will find a copy of this license in the COPYING file included in the source package.

In addition, as a special exception, the copyright holders give permission to link the code of portions of this program with the OpenSSL library under certain conditions as described in each individual source file, and distribute linked combinations including the two.

You must obey the GNU General Public License in all respects for all of the code used other than OpenSSL. If you modify file(s) with this exception, you may extend this exception to your version of the file(s), but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version. If you delete this exception statement from all source files in the program, then also delete it here.

Contributing

There are many ways to contribute to Icinga -- whether it be sending patches, testing, reporting bugs, or reviewing and updating the documentation. Every contribution is appreciated!

Please continue reading in the contributing chapter.

If you are a packager, please read the development chapter for more details.

Security Issues

For reporting security issues please visit this page.