Hi,
We are running a XI 2026R1.4 on a RHEL9
I noticed that some notifications alert are not being sent
I can see the log notifications in /usr/local/nagios/var/nagios.log
but no trace of the missing notificatons in /usr/local/nagiosxi/var/eventman.log
In the /var/log/httpd/ssl_error_log non-stop of log like:
[Wed Jun 10 11:25:04.492071 2026] [proxy_fcgi:error] [pid 1805:tid 1907] [client 192.168.113.47:52579] AH01071: Got error 'PHP message: PHP Notice: DB is not connected in /usr/local/nagiosxi/html/includes/db.inc.php on line 530PHP message: PHP Notice: Call made to exec_sql_query() when DB handler does not exist\n#0 exec_sql_query(nagiosxi, SELECT * FROM xi_options WHERE name='', ) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1293]\n#1 get_option(url) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:983]\n#2 get_internal_url() called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1026]\n#3 get_safe_url_host() called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1115]\n#4 get_base_uri(1) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:966]\n#5 get_base_url(1) called at [/usr/local/nagiosxi/html/includes/utils-components.inc.php:53]\n#6 get_component_url_base() called at [/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlemapdashlet.inc.php:30]\n#7 googlemap_dashlet_init() called at [/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlemapdashlet.inc.php:9]\n#8 include_once(/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlemapdashlet...PHP message: PHP Notice: DB is not connected in /usr/local/nagiosxi/html/includes/db.inc.php on line 530PHP message: PHP Notice: Call made to exec_sql_query() when DB handler does not exist\n#0 exec_sql_query(nagiosxi, SELECT * FROM xi_options WHERE name='', ) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1293]\n#1 get_option(external_url) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:973]\n#2 get_external_url() called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1033]\n#3 get_safe_url_host() called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1115]\n#4 get_base_uri(1) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:966]\n#5 get_base_url(1) called at [/usr/local/nagiosxi/html/includes/utils-components.inc.php:53]\n#6 get_component_url_base() called at [/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlemapdashlet.inc.php:30]\n#7 googlemap_dashlet_init() called at [/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlemapdashlet.inc.php:9]\n#8 include_once(/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlem...PHP message: PHP Notice: DB is not connected in /usr/local/nagiosxi/html/includes/db.inc.php on line 530PHP message: PHP Notice: Call made to exec_sql_query() when DB handler does not exist\n#0 exec_sql_query(nagiosxi, SELECT * FROM xi_options WHERE name='', ) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1293]\n#1 get_option(url) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:975]\n#2 get_external_url() called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1033]\n#3 get_safe_url_host() called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1115]\n#4 get_base_uri(1) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:966]\n#5 get_base_url(1) called at [/usr/local/nagiosxi/html/includes/utils-components.inc.php:53]\n#6 get_component_url_base() called at [/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlemapdashlet.inc.php:30]\n#7 googlemap_dashlet_init() called at [/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlemapdashlet.inc.php:9]\n#8 include_once(/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlemapdashlet...PHP message: PHP Notice: DB is not connected in /usr/local/nagiosxi/html/includes/db.inc.php on line 530PHP message: PHP Notice: Call made to exec_sql_query() when DB handler does not exist\n#0 exec_sql_query(nagiosxi, SELECT * FROM xi_options WHERE name='', ) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1293]\n#1 get_option(url) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:983]\n#2 get_internal_url() called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1026]\n#3 get_safe_url_host() called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1115]\n#4 get_base_uri(1) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:966]\n#5 get_base_url() called at [/usr/local/nagiosxi/html/includes/utils-dashlets.inc.php:0]\n#6 get_dashlet_url_base(googlemapdashlet) called at [/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlemapdashlet.inc.php:33]\n#7 googlemap_dashlet_init() called at [/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlemapdashlet.inc.php:9]\n#8 include_once(/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/google...PHP message: PHP Notice: DB is not connected in /usr/local/nagiosxi/html/includes/db.inc.php on line 530PHP message: PHP Notice: Call made to exec_sql_query() when DB handler does not exist\n#0 exec_sql_query(nagiosxi, SELECT * FROM xi_options WHERE name='', ) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1293]\n#1 get_option(external_url) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:973]\n#2 get_external_url() called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1033]\n#3 get_safe_url_host() called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1115]\n#4 get_base_uri(1) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:966]\n#5 get_base_url() called at [/usr/local/nagiosxi/html/includes/utils-dashlets.inc.php:0]\n#6 get_dashlet_url_base(googlemapdashlet) called at [/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlemapdashlet.inc.php:33]\n#7 googlemap_dashlet_init() called at [/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlemapdashlet.inc.php:9]\n#8 include_once(/usr/local/nagiosxi/html/includes/dashlets/googlemapdashl...PHP message: PHP Notice: DB is not connected in /usr/local/nagiosxi/html/includes/db.inc.php on line 530PHP message: PHP Notice: Call made to exec_sql_query() when DB handler does not exist\n#0 exec_sql_query(nagiosxi, SELECT * FROM xi_options WHERE name='', ) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1293]\n#1 get_option(url) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:975]\n#2 get_external_url() called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1033]\n#3 get_safe_url_host() called at [/usr/local/nagiosxi/html/includes/utils.inc.php:1115]\n#4 get_base_uri(1) called at [/usr/local/nagiosxi/html/includes/utils.inc.php:966]\n#5 get_base_url() called at [/usr/local/nagiosxi/html/includes/utils-dashlets.inc.php:0]\n#6 get_dashlet_url_base(googlemapdashlet) called at [/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlemapdashlet.inc.php:33]\n#7 googlemap_dashlet_init() called at [/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/googlemapdashlet.inc.php:9]\n#8 include_once(/usr/local/nagiosxi/html/includes/dashlets/googlemapdashlet/google...', referer: https://nagios/nagiosxi/
Could you help? thanks
Some notifications are not being sent
Re: Some notifications are not being sent
Hello @op-team,
Here are some troubleshooting steps that may be helpful to you:
The fact that you **see the notification entry in** `/usr/local/nagios/var/nagios.log` **but do not see a corresponding event in** `/usr/local/nagiosxi/var/eventman.log` is actually a very useful clue.
`nagios.log` is generated by **Nagios Core**, while `eventman.log` is generated by the **Nagios XI Event Manager**, which processes XI-specific events such as XI user notifications and handlers. The normal flow is:
> Nagios Core → event inserted into `xi_events` database → `eventman.php` processes it → `eventman.log` shows processing. ([Nagios Library][1])
If the notification exists in `nagios.log` but never appears in `eventman.log`, then the problem is typically **before or at the point where Event Manager receives the event**, not in email delivery itself. ([Nagios Library][1])
## Things I would check, in order
### 1. Is `eventman.php` actually running continuously?
You should normally see an active `eventman.php` process. XI uses cron to start it every minute, and it loops for approximately 59 seconds. ([Nagios Library][1])
Also verify:
and confirm the Event Manager cron entry exists.
### 2. Watch `eventman.log` live
Run:
Then deliberately trigger a notification.
If **nothing** appears, Event Manager may not be receiving events.
If you only see:
PROCESSED 0 EVENTS
repeatedly, it usually means Event Manager is polling but finding nothing to process. ([Nagios Support][2])
### 3. Check whether the events are reaching the XI database
The Event Manager reads from the `xi_events` table.
If you have database access:
(or inspect the equivalent table for your XI version).
If the missing notifications never appear there, the issue is upstream of Event Manager.
### 4. Compare a working notification with a missing one
In `nagios.log`, look for lines like:
SERVICE NOTIFICATION:
HOST NOTIFICATION:
Compare:
* host/service
* contact
* notification type
* state
* time
Is there a pattern?
For example:
* only recovery notifications missing?
* only one contact?
* only one contact group?
* only passive checks?
* only escalated notifications?
Patterns usually point directly to configuration issues.
### 5. Verify whether these are XI users or Core contacts
XI documentation notes that:
* **Core contacts** use commands like:
* `notify-service-by-email`
* `notify-host-by-email`
* **XI users associated with contacts** use:
* `xi_service_notification_handler`
* `xi_host_notification_handler`
If only XI user notifications are affected while Core notifications work, investigate the XI notification handlers. ([Nagios Library][3])
### 6. Check whether notifications are intentionally suppressed
Nagios will not send notifications in cases such as:
* acknowledgements
* scheduled downtime
* notification period restrictions
* notification options excluding that state
* contact timeperiod exclusions
These can result in behavior that looks like "missing notifications." ([Nagios Library][3])
[1]: https://library.nagios.com/docs/nagios- ... hatgpt.com "Nagios Docs"
[2]: viewtopic.php?start=10&t=53620&utm_source=chatgpt.com "XI cannot send a notification email when service critical. - Page 2 - Nagios Support Forum"
[3]: https://library.nagios.com/docs/nagios- ... hatgpt.com "Nagios XI Notification Problems"
Here are some troubleshooting steps that may be helpful to you:
The fact that you **see the notification entry in** `/usr/local/nagios/var/nagios.log` **but do not see a corresponding event in** `/usr/local/nagiosxi/var/eventman.log` is actually a very useful clue.
`nagios.log` is generated by **Nagios Core**, while `eventman.log` is generated by the **Nagios XI Event Manager**, which processes XI-specific events such as XI user notifications and handlers. The normal flow is:
> Nagios Core → event inserted into `xi_events` database → `eventman.php` processes it → `eventman.log` shows processing. ([Nagios Library][1])
If the notification exists in `nagios.log` but never appears in `eventman.log`, then the problem is typically **before or at the point where Event Manager receives the event**, not in email delivery itself. ([Nagios Library][1])
## Things I would check, in order
### 1. Is `eventman.php` actually running continuously?
Code: Select all
ps -ef | grep eventman.php
Also verify:
Code: Select all
cat /etc/cron.d/nagiosxi
### 2. Watch `eventman.log` live
Run:
Code: Select all
tail -f /usr/local/nagiosxi/var/eventman.log
If **nothing** appears, Event Manager may not be receiving events.
If you only see:
PROCESSED 0 EVENTS
repeatedly, it usually means Event Manager is polling but finding nothing to process. ([Nagios Support][2])
### 3. Check whether the events are reaching the XI database
The Event Manager reads from the `xi_events` table.
If you have database access:
Code: Select all
SELECT *
FROM xi_events
ORDER BY event_time DESC
LIMIT 20;
If the missing notifications never appear there, the issue is upstream of Event Manager.
### 4. Compare a working notification with a missing one
In `nagios.log`, look for lines like:
SERVICE NOTIFICATION:
HOST NOTIFICATION:
Compare:
* host/service
* contact
* notification type
* state
* time
Is there a pattern?
For example:
* only recovery notifications missing?
* only one contact?
* only one contact group?
* only passive checks?
* only escalated notifications?
Patterns usually point directly to configuration issues.
### 5. Verify whether these are XI users or Core contacts
XI documentation notes that:
* **Core contacts** use commands like:
* `notify-service-by-email`
* `notify-host-by-email`
* **XI users associated with contacts** use:
* `xi_service_notification_handler`
* `xi_host_notification_handler`
If only XI user notifications are affected while Core notifications work, investigate the XI notification handlers. ([Nagios Library][3])
### 6. Check whether notifications are intentionally suppressed
Nagios will not send notifications in cases such as:
* acknowledgements
* scheduled downtime
* notification period restrictions
* notification options excluding that state
* contact timeperiod exclusions
These can result in behavior that looks like "missing notifications." ([Nagios Library][3])
[1]: https://library.nagios.com/docs/nagios- ... hatgpt.com "Nagios Docs"
[2]: viewtopic.php?start=10&t=53620&utm_source=chatgpt.com "XI cannot send a notification email when service critical. - Page 2 - Nagios Support Forum"
[3]: https://library.nagios.com/docs/nagios- ... hatgpt.com "Nagios XI Notification Problems"
Cheers,
- Cole
- Cole
Re: Some notifications are not being sent
Hi
Thanks your reply
I did all the verifications without figure out the cause of this issue
From time to time i see many concurents 'eventman.php' running jobs
and looking into eventman.log, i noticed that the report "TIME" doesn't match the real event time:
[nvs-nagios: ~]# egrep "PROCESS EVENT|PROCESSED" /usr/local/nagiosxi/var/eventman.log
...
Thu, 11 Jun 2026 14:51:01 +0200 PROCESSED 11 EVENTS
Thu, 11 Jun 2026 14:51:02 +0200 PROCESS EVENT: ID=29552092, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:07
Thu, 11 Jun 2026 14:51:36 +0200 PROCESS EVENT: ID=29552093, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:07
Thu, 11 Jun 2026 14:51:49 +0200 PROCESS EVENT: ID=29552094, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:07
Thu, 11 Jun 2026 14:51:54 +0200 PROCESS EVENT: ID=29552095, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:07
Thu, 11 Jun 2026 14:52:00 +0200 PROCESS EVENT: ID=29552096, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:07
Thu, 11 Jun 2026 14:52:01 +0200 PROCESS EVENT: ID=29552097, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:08
Thu, 11 Jun 2026 14:52:09 +0200 PROCESSED 5 EVENTS
Thu, 11 Jun 2026 14:52:10 +0200 PROCESS EVENT: ID=29552098, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:08
Thu, 11 Jun 2026 14:52:15 +0200 PROCESS EVENT: ID=29552099, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:08
Thu, 11 Jun 2026 14:52:20 +0200 PROCESS EVENT: ID=29552100, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:08
Thu, 11 Jun 2026 14:53:01 +0200 PROCESS EVENT: ID=29552101, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:08
Thu, 11 Jun 2026 14:54:01 +0200 PROCESS EVENT: ID=29552100, SOURCE=2, TYPE=1, TIME=2026-06-11 14:52:20
Thu, 11 Jun 2026 14:55:02 +0200 PROCESS EVENT: ID=29552100, SOURCE=2, TYPE=1, TIME=2026-06-11 14:54:01
Is't a normal behaviour?
Thanks your reply
I did all the verifications without figure out the cause of this issue
From time to time i see many concurents 'eventman.php' running jobs
and looking into eventman.log, i noticed that the report "TIME" doesn't match the real event time:
[nvs-nagios: ~]# egrep "PROCESS EVENT|PROCESSED" /usr/local/nagiosxi/var/eventman.log
...
Thu, 11 Jun 2026 14:51:01 +0200 PROCESSED 11 EVENTS
Thu, 11 Jun 2026 14:51:02 +0200 PROCESS EVENT: ID=29552092, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:07
Thu, 11 Jun 2026 14:51:36 +0200 PROCESS EVENT: ID=29552093, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:07
Thu, 11 Jun 2026 14:51:49 +0200 PROCESS EVENT: ID=29552094, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:07
Thu, 11 Jun 2026 14:51:54 +0200 PROCESS EVENT: ID=29552095, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:07
Thu, 11 Jun 2026 14:52:00 +0200 PROCESS EVENT: ID=29552096, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:07
Thu, 11 Jun 2026 14:52:01 +0200 PROCESS EVENT: ID=29552097, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:08
Thu, 11 Jun 2026 14:52:09 +0200 PROCESSED 5 EVENTS
Thu, 11 Jun 2026 14:52:10 +0200 PROCESS EVENT: ID=29552098, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:08
Thu, 11 Jun 2026 14:52:15 +0200 PROCESS EVENT: ID=29552099, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:08
Thu, 11 Jun 2026 14:52:20 +0200 PROCESS EVENT: ID=29552100, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:08
Thu, 11 Jun 2026 14:53:01 +0200 PROCESS EVENT: ID=29552101, SOURCE=2, TYPE=1, TIME=2026-06-06 02:45:08
Thu, 11 Jun 2026 14:54:01 +0200 PROCESS EVENT: ID=29552100, SOURCE=2, TYPE=1, TIME=2026-06-11 14:52:20
Thu, 11 Jun 2026 14:55:02 +0200 PROCESS EVENT: ID=29552100, SOURCE=2, TYPE=1, TIME=2026-06-11 14:54:01
Is't a normal behaviour?
Re: Some notifications are not being sent
Hi @op-team ,
I believe you are correct that this is not normal behavior for eventman.php.
I would highly recommend opening a support case to help diagnose and resolve the underlying problem.
I believe you are correct that this is not normal behavior for eventman.php.
I would highly recommend opening a support case to help diagnose and resolve the underlying problem.
Cheers,
- Cole
- Cole
Re: Some notifications are not being sent
Hello,
I have requested support by opening a case
I have requested support by opening a case