Nagios XI - SQL Error [nagiosxi] : ERROR: syntax error

Problem Description

This KB article explains how to resolve an error similar to the following that appears in the Nagios XI GUI:

SQL Error [nagiosxi] : ERROR:  syntax error at or near "localhost"
LINE 1: ...ios XI','nagiosadmin',4,'User reconfigured host \'localhost\...

 

The postgresql log file in /var/lib/pgsql/data/pg_log/ will have more detailed information:

ERROR:  syntax error at or near "localhost" at character 166
STATEMENT: INSERT INTO xi_auditlog (log_time,source,"user",type,message,ip_address,details) VALUES ('2017-09-06 14:15:29','Nagios XI','nagiosadmin',4,'User reconfigured host \'localhost\'','10.9.2.41','Array
(
[host_name] => localhost
[use] => linux-server
[alias] => localhost
[address] => 127.0.0.1
[first_notification_delay] => 0
[notifications_enabled] => 1
[register] => 1
[contacts] => nagiosadmin
)
')

 

This error occurs on the Host or Service Status Detail page > Configure tab, when you are using the re-configure a host or service option.

The problem only occurs with older installations of Nagios XI that historically used PostgreSQL for the nagiosxi database. Fresh installations of Nagios XI since 5.x do not experience this issue.

The problem only occurs with PostgreSQL 9.1 or greater.

 

 

Resolution

A simple change to the postgresql.conf file will resolve this problem.

Establish a terminal session to your Nagios XI server as root and edit the postgresql.conf file with this command:

vi /var/lib/pgsql/data/postgresql.conf

When using the vi editor, to make changes press i on the keyboard first to enter insert mode. Press Esc to exit insert mode.

 

Locate the following line:

#standard_conforming_strings =

Tip: typing /conform and pressing Enter in vi should take you directly to this section in the file.

 

Remove the # from the begging of the line and set it to off:

standard_conforming_strings = off

 

When you have finished, save the changes in vi by typing:

:wq

and press Enter.

 

You need to restart the postgresql service using one of the commands below:

 

You need to restart the service using one of the commands below:

RHEL 6 | CentOS 6 | Oracle Linux 6 | Ubuntu 14

service postgresql restart

 

RHEL 7 | CentOS 7 | Oracle Linux 7 | Debian | Ubuntu 16/18

systemctl restart postgresql.service

 

This completes the changes required for resolving the problem described above.

 

 

Further Information

The following documentation explains in detail the standard_conforming_strings option:

https://www.postgresql.org/docs/9.1/static/release-9-1.html

 

 

Final Thoughts

For any support related questions please visit the Nagios Support Forums at:

http://support.nagios.com/forum/

Posted by: - Sun, Sep 10, 2017 at 9:00 PM. This article has been viewed 1269 times.
Online URL: https://support.nagios.com/kb/article/nagios-xi-sql-error-nagiosxi-error-syntax-error-754.html

Powered by PHPKB (Knowledge Base Software)