We are pleased to announce that Nagios Core 4.0.0 is now available for download. Core 4 brings numerous performance enhancements and new features to a platform that is already the world leader in monitoring. Key changes included in this release are outlined below:
- Performance Improvements:
- Core Workers (see below for more information.)
- Configuration Verification: In Core 4, each configuration item is only verified once with an O(n) operation, whereas in Core 3 it was an O(n^2) operation.
- Event Queue: In Core 4, inserting events into the event queue is now an O(log n) operation, whereas in Core 3 it was an O(n) operation.
- Macros: In Core 4, macros are now sorted at start-up so that a binary search can be used rather than the linear search that was used in Core 3. In addition, frequently accessed macros such as $USERx$, $ARGx$, and $HOSTADDRESS$ are given special case, early lookups. - Query Handler: The query handler provides a simple interface for external entities communicating with Nagios Core. Core workers use the query handler interface.
- Core Workers: The process of performing checks is now handled by a lightweight core worker process.
- There are standard worker processes that are created when Core starts that stay running as long as Core is running. This eliminates at least one fork of Nagios Core when a check is performed and in many cases two forks, thus speeding up the checks.
- Core workers communicate with the main Nagios Core process with an in-memory IPC mechanism (currently Unix-domain sockets), eliminating the I/O bottleneck that Core 3 encountered while writing and reading check results to/from disk.
- The core worker architecture is extensible to special purpose workers that could potentially perform checks even faster and/or distribute the check load. - libnagios: libnagios is a library of functions useful to developers of query handlers and core workers.
For more detailed information on what’s new in Core 4, visit:
http://nagios.sourceforge.net/docs/nagioscore/4/en/whatsnew.html