Icinga / icingaweb2-module-director

The Director aims to be your new favourite Icinga config deployment tool. Director is designed for those who want to automate their configuration deployment and those who want to grant their “point & click” users easy access to the configuration.
https://icinga.com/docs/director/latest
GNU General Public License v2.0
413 stars 201 forks source link

PHP 8.1 not supported by Icinga Director 1.10.0 #2629

Closed github6043 closed 1 year ago

github6043 commented 1 year ago

icinga-director.service - Icinga Director - Monitoring Configuration Loaded: loaded (/etc/systemd/system/icinga-director.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2022-10-05 09:52:25 CEST; 16min ago Docs: https://icinga.com/docs/director/latest/ Main PID: 928 (icingacli) Status: "running, db: connected" Tasks: 1 (limit: 19115) Memory: 28.1M CGroup: /system.slice/icinga-director.service └─928 icinga::director: running, db: connected

Oct 05 10:03:01 advsrmon122 icingadirector[928]: PHP Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated in /usr/share/icingaweb2/modules/director/library/Director/Core/CoreApi.php on line 50 Oct 05 10:03:01 advsrmon122 icingadirector[928]: Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated in /usr/share/icingaweb2/modules/director/library/Director/Core/CoreApi.php on line 50 Oct 05 10:03:06 advsrmon122 icingadirector[928]: PHP Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated in /usr/share/icingaweb2/modules/director/library/Director/Core/CoreApi.php on line 50 Oct 05 10:03:06 advsrmon122 icingadirector[928]: Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated in /usr/share/icingaweb2/modules/director/library/Director/Core/CoreApi.php on line 50 Oct 05 10:03:11 advsrmon122 icingadirector[928]: PHP Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated in /usr/share/icingaweb2/modules/director/library/Director/Core/CoreApi.php on line 50 Oct 05 10:03:11 advsrmon122 icingadirector[928]: Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated in /usr/share/icingaweb2/modules/director/library/Director/Core/CoreApi.php on line 50 Oct 05 10:03:16 advsrmon122 icingadirector[928]: PHP Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated in /usr/share/icingaweb2/modules/director/library/Director/Core/CoreApi.php on line 50 Oct 05 10:03:16 advsrmon122 icingadirector[928]: Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated in /usr/share/icingaweb2/modules/director/library/Director/Core/CoreApi.php on line 50 Oct 05 10:03:21 advsrmon122 icingadirector[928]: PHP Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated in /usr/share/icingaweb2/modules/director/library/Director/Core/CoreApi.php on line 50 Oct 05 10:03:21 advsrmon122 icingadirector[928]: Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated in /usr/share/icingaweb2/modules/director/library/Director/Core/CoreApi.php on line 50

Thomas-Gelf commented 1 year ago

Thanks for reporting this! There was an issue with the version comparison logic and operator precedence. Happens when the Icinga daemon is not running. Could you please give the attached fix a try and let me know, whether it works for you?

github6043 commented 1 year ago

Thanks for reporting this! There was an issue with the version comparison logic and operator precedence. Happens when the Icinga daemon is not running. Could you please give the attached fix a try and let me know, whether it works for you?

Hi Thomas, sorry, cannot find the patch

Thomas-Gelf commented 1 year ago

Here you go: 3c2815d

github6043 commented 1 year ago

Ok, found it, Editing file /usr/share/icingaweb2/modules/director/library/Director/Core/CoreApi.php

if ($version === null || (version_compare($version, '2.8.2', '>=')

&& version_compare($version, '2.10.2', '<'))

  if ($version === null ||
        ((version_compare($version, '2.8.2', '>=') && version_compare($version, '2.10.2', '<')))

Restarted Director & Icinga2, same result

Thomas-Gelf commented 1 year ago

Please share the new error, I'm pretty sure it's not "exactly" the same one ;-)

github6043 commented 1 year ago

No error by now, but still turning circles in Deployments.

root@adv....:/home/superuser# systemctl status icinga-director.service ● icinga-director.service - Icinga Director - Monitoring Configuration Loaded: loaded (/etc/systemd/system/icinga-director.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2022-10-05 13:07:38 CEST; 6min ago Docs: https://icinga.com/docs/director/latest/ Main PID: 312809 (icingacli) Status: "running, db: connected" Tasks: 1 (limit: 19115) Memory: 9.5M CGroup: /system.slice/icinga-director.service └─312809 icinga::director: running, db: connected

Oct 05 13:07:38 adv..... systemd[1]: Starting Icinga Director - Monitoring Configuration... Oct 05 13:07:38 adv..... systemd[1]: Started Icinga Director - Monitoring Configuration.

Thomas-Gelf commented 1 year ago

Well, this is probably because your Icinga daemon is not running - the main reason why you managed it to discover this issue in the first place ;-)

github6043 commented 1 year ago

icinga2.service - Icinga host/service/network monitoring system Loaded: loaded (/lib/systemd/system/icinga2.service; enabled; vendor preset: enabled) Drop-In: /etc/systemd/system/icinga2.service.d └─limits.conf Active: active (running) since Wed 2022-10-05 13:17:41 CEST; 4min 25s ago Process: 896 ExecStartPre=/usr/lib/icinga2/prepare-dirs /etc/default/icinga2 (code=exited, status=0/SUCCESS) Main PID: 934 (icinga2) Status: "Startup finished." Tasks: 85

github6043 commented 1 year ago

Or is the Daemon another process ? BTW, I did a Server reboot.

github6043 commented 1 year ago

Hi Thomas, now I get

icinga-director.service - Icinga Director - Monitoring Configuration Loaded: loaded (/etc/systemd/system/icinga-director.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2022-10-05 13:17:40 CEST; 1h 0min ago Docs: https://icinga.com/docs/director/latest/ Main PID: 893 (icingacli) Status: "running, db: connected" Tasks: 1 (limit: 19115) Memory: 28.6M CGroup: /system.slice/icinga-director.service └─893 icinga::director: running, db: connected

Oct 05 13:17:40 advsrmon122 systemd[1]: Starting Icinga Director - Monitoring Configuration... Oct 05 13:17:40 advsrmon122 systemd[1]: Started Icinga Director - Monitoring Configuration. Oct 05 13:17:40 advsrmon122 icingadirector[893]: Zend_Db_Adapter_Exception in /usr/share/icingaweb2/library/vendor/Zend/Db/Adapter/Pdo/Abstract.php:145 with message: SQLSTATE[HY000] [2002] No such file or directory <- PDOException in /usr/share/icingaweb2/library/vendor/Zend/Db/Adapter/Pdo/Abstract.php:124 with message: SQLSTATE[HY000] [2002] No such file or directory ~