FreeBSD: icingaweb-director: Undefined offset: 0

This forum was archived to /woltlab and is now in read-only mode.
  • Hallo Forum.

    Wir betreiben eine Icinga2/icingaweb2 Platform auf FreeBSD (12-CURRENT).


    Datenbank (PostgreSQL 9.6), Webserver (Apache 2.4) und Icinga2 sind jeweils auf unterschiedlichen Maschinen bzw. "jails". Icingaweb2 ist auf dem Webserver installiert. Das Gespann läuft in der hier skizzierten Konfiguration bisher problemlos, die Interaktionen sind zwischen DB, Icinga2 und Webserver sind in einer unanspruchsvollen Umgebung unproblematisch.


    Ich habe nun den icinga-director installiert. In der linken Menüleiste des Icingaweb2 Interfaces taucht auch ein Punkt "Icinga-Director" auf, klicke ich diesen an, wird ein die Fehlermeldung "Undefined offset: 0", mit einem ganzen Satz von Logs ausgegeben, wovon ich hier nur dieersten Zeilen wiedergeben will:


    Code
    1. #0 /usr/local/www/icingaweb2/modules/director/library/Director/Dashboard/Dashlet/Dashlet.php(233): Icinga\Application\ApplicationBootstrap->Icinga\Application\{closure}(8, 'Undefined offse...', '/usr/local/www/...', 233, Array)
    2. #1 /usr/local/www/icingaweb2/modules/director/library/Director/Dashboard/Dashlet/Dashlet.php(163): Icinga\Module\Director\Dashboard\Dashlet\Dashlet->statSummary(false)
    3. #2 /usr/local/www/icingaweb2/modules/director/library/Director/Dashboard/Dashlet/Dashlet.php(172): Icinga\Module\Director\Dashboard\Dashlet\Dashlet->getSummary()
    4. #3 zend.view:///usr/local/www/icingaweb2/modules/director/application/views/scripts/dashlets/default.phtml(4): Icinga\Module\Director\Dashboard\Dashlet\Dashlet->getEscapedSummary()
    5. #4 /usr/local/www/icingaweb2/library/Icinga/Web/View.php(231): include('zend.view:///us...')
    6. #5 /usr/local/www/icingaweb2/library/vendor/Zend/View/Abstract.php(877): Icinga\Web\View->_run('/usr/local/www/...')
    7. #6 /usr/local/www/icingaweb2/library/vendor/Zend/View/Helper/Partial.php(106): Zend_View_Abstract->render('dashlets/defaul...')
    8. #7 [internal function]: Zend_View_Helper_Partial->partial('dashlets/defaul...', Array)
    9. [...]


    Der Fehler "Undefined offset: 0" wird laut Google-Suche mit einer fehlerhaften bzw. nichtvorhandenen DB Verbindung bzw. falschem Schema bzw. uninitialisierter DB in Verbindung gebracht - das ist aber nicht der Fall, die DB ist eingerichtet und kann offenbar auch angesprochen werden: wenn ich Templates für Icinga2 Objekte anlege, z.B. für Hosts (generic-host, beispielsweise), so finden sich diese Einträge dann auch in den entsprechenden Tabellen wieder, was ich via SELECT auf dem DB Server einfach feststellen konnte.


    In der Datei "/usr/local/etc/icingaweb2/modules/director/config.ini" befindet sich:


    [db]
    resource = "director_ido"


    und "director_ido" ist in "/usr/local/etc/icingaweb2/resources.ini" wie folgt definiert:


    [director_ido]
    type = "db"
    db = "pgsql"
    host = "192.168.178.235"
    port = "5432"
    dbname = "director"
    username = "director"

    password =********"

    charset = "utf8"


    Ursprünglich wollte testen, ob die DB Tabellen evtl. nach einem Update des icinga-director Moduls nicht mehr konform sind und habe mit


    /usr/local/www/icingaweb2/bin/icingacli director migration run


    einen Migrationstest versucht, der aber mit


    ERROR: Icinga\Exception\IcingaException in /usr/local/www/icingaweb2/library/Icinga/Cli/Command.php:141 with message: Director is not configured correctly


    quittiert wird - und hier versagt es dann bei mir, denn weitere Fehler gibt es nicht und PHP Debugging ist nicht mein Metier.


    Meiner Ansicht nach kann das icinga-director Modul mit der DB kommunizieren, denn Einträge werden geschrieben.


    Auf mich macht das einen sehr konfusen Eindruck. Ich habe leider in der Dokumentation nicht viel finden können, was über eine einfache Installation hinausgeht.


    Vielleicht weiß jemand Rat.


    Dank im voraus.





  • nach welcher anleitung hast du denn den Director installiert?

    Linux is dead, long live Linux


    Remember to NEVER EVER use git repositories in a productive environment if you CAN NOT control them

  • dann sollte es daran schon mal nicht liegen, kannst du dir mal das Array von der ersten Zeile im log ansehen, da scheint er irgendwo ein problem zu haben.

    Linux is dead, long live Linux


    Remember to NEVER EVER use git repositories in a productive environment if you CAN NOT control them

  • Nachdem ich nun mit dem icingacli Kommando herumexperimentiert habe und das Module "director" damit auch einige Informationen problemlos aus der DB extrahieren kann, muß ich davon ausgehen, daß es sich um einen Bug und/oder einen Linuxismus (beide wohl equivalent) handeln muß. Nicht ganz klar ist das PHP Casting: aus einem "false" wird 0 und führt dann zum gezeigten Ergebnis.


    Vielleicht weiß jemand Rat und kann aus dem Backtrace Schnipsel exegieren, was icingaweb-director machen möchte, nicht findet und darob scheitert.


    Danke.