Event Manager Subsystem Overview
This Event Manager subsystem of Nagios XI is responsible for processing callback functions for each event that are initiated from the Nagios or other connected systems. Events can be items like state change for a host or service, a notification being triggered to send out or other timed events. These callbacks are executed by the Event Manager subsystem, which passes the information from the event to the callback for further processing.
The diagram below shows the different parts of the Event Manager subsystem and how they relate to each other. Each part of the subsystem is explained in greater detail below.
The general flow of execution of the Event Manager subsystem works as follows:
An event is initiated from Nagios Core or another attached system (e.g. state changed for a host or service)
The added event is saved in the xi_events table of the nagiosxi postgresql (mysql in XI 5+) database
The eventman.php script runs as a background process and watches for new events added to the database. The eventman.php script is located at /usr/local/nagiosxi/cron/eventman.php and runs under cron every minute. The cron job is defined in /etc/cron.d/nagiosxi. While the cron job itself runs every minute, the script enters into a loop that lasts 59 seconds - this ensures that the processing is done constantly as opposed to only once every 60 seconds.
The eventman.php script executes the callbacks created targeting specific event types
The eventman.php script saves the results of the event processing in the xi_events table of the nagiosxi postgresql database
The following are all processed through the Event Manager Subsystem:
Notifications for XI users
Global Event Handlers
Global Notification Handlers
SNMP Trap Sender
Nagios Reactor Component
Nagios Incident Manager Component
Some potential problems with the Event Manager subsystem, as well as troubleshooting information are listed below:
Problem: Notifications for XI users are not being received, however Core contacts receive their messages
The eventman.php scripts may not be running. Run the following command to see if the script is running:
ps axuw | grep eventman.php
There may be a problem with the cron job. Check the cron file /etc/cron.d/nagiosxi to ensure the job is not commented out.
Check the /usr/local/nagiosxi/var/eventman.log log file for errors
The nagios user account is expired causing the cron to not run.
For any support related questions please visit the Nagios Support Forums at:
Article ID: 69
Created On: Sun, Feb 8, 2015 at 11:39 AM
Last Updated On: Tue, May 17, 2016 at 2:35 PM
Authored by: swilkerson
Online URL: https://support.nagios.com/kb/article/nagios-xi-event-manager-architecture-69.html