Mit Hilfe dieser Anleitung können Sie PNP4Nagios in das Icinga Web Frontend integrieren. Wenn Sie PNP4Nagios in das Icinga Classic UI integrieren möchten lesen Sie bitte die PNP4Nagios Dokumentation
Installieren von PNP4Nagios
Installieren Sie PNP4Nagios wie in der PNP4Nagios Dokumentation beschrieben.
Passen Sie die PNP4Nagios Konfiguration auf Ihre Icinga Konfiguration an. Wahrscheinlich müssen Sie hier ändern:
#> vi npcd.cfg user = icinga group = icinga log_file = /var/log/icinga/npcd.log perfdata_spool_dir = /var/icinga/spool/ perfdata_file = /var/icinga/perfdata.dump
#> vi process_perfdata.cfg LOG_FILE = /var/log/icinga/perfdata.log
#> vi config.php $conf['nagios_base'] = "/icinga/cgi-bin";
Erstellen Sie die Konfiguration um die PNP4Nagios Host-Seiten in das Icinga Web zu integrieren
Erstellen einer neuen Grid Ansicht:
Bitte erstellen Sie eine Kopie von icinga-host-template.xml in app/modules/Cronks/data/xml/grid unter Ihrem icinga-web Installationspfad:
cp /usr/share/icinga-web/app/modules/Cronks/data/xml/grid/icinga-host-template.xml /usr/share/icinga-web/app/modules/Cronks/data/xml/grid/icinga-my-host-template.xml
In der neuen Datei legen wir eine zusätzliche Feld- (field) Definition an:
<field name="pnp4nagios_host_link"> <!-- datasource maps a data field from api call --> <datasource> <parameter name="field">HOST_NAME</parameter> </datasource> <display> <parameter name="visible">true</parameter> <parameter name="label">Perfdata</parameter> <parameter name="width">55</parameter> <parameter name="Ext.grid.Column"> <parameter name="menuDisabled">true</parameter> <parameter name="fixed">true</parameter> </parameter> <parameter name="jsFunc"> <!-- fnuction to display column with icon in host status grid view --> <parameter> <parameter name="namespace">Cronk.grid.ColumnRenderer</parameter> <parameter name="function">columnImage</parameter> <parameter name="type">renderer</parameter> <parameter name="arguments"> <parameter name="image">images/icons/application_view_gallery.png</parameter> <parameter name="css">x-icinga-grid-link</parameter> <parameter name="attr"> <parameter name="qtip">Show host perfdata for this host</parameter> </parameter> </parameter> </parameter> <!-- create cell click event for the previously defined column --> <parameter> <parameter name="namespace">Cronk.grid.IcingaColumnRenderer</parameter> <parameter name="function">iFrameCronk</parameter> <parameter name="type">cellclick</parameter> <parameter name="arguments"> <parameter name="title">Host perfdata for {host_name}</parameter> <parameter name="url"><![CDATA[/pnp4nagios/index.php/graph?host={host_name}&srv=_HOST_]]></parameter> <parameter name="activateOnClick">true</parameter> </parameter> </parameter> </parameter> </display> <filter> <parameter name="enabled">false</parameter> </filter> <order> <parameter name="enabled">false</parameter> </order> </field>
Anlegen einer neuen Grid-Ansicht im "Data" Cronk-Container
Editieren von cronks.xml im Unterverzeichnis app/modules/Cronks/config/ unter Icinga Web und hinzufügen von:
<ae:parameter name="gridMyServiceView"> <ae:parameter name="module">Cronks</ae:parameter> <ae:parameter name="action">System.ViewProc</ae:parameter> <ae:parameter name="hide">false</ae:parameter> <ae:parameter name="description">Viewing service status in a grid including perfdata link</ae:parameter> <ae:parameter name="name">MyServiceStatus</ae:parameter> <ae:parameter name="categories">data</ae:parameter> <ae:parameter name="ae:parameter"> <ae:parameter name="template">icinga-my-service-template</ae:parameter> </ae:parameter> </ae:parameter>
![]() |
Anmerkung |
---|---|
Bitte denken Sie daran, wenn Sie eine *.xml-Datei editieren, müssen Sie danach den Cache bereinigen! |
rm -f app/cache/config/*.php
oder
/icinga-web/bin/clearcache.sh
Das war es auch schon, Sie sind fertig!
© 2009-2010 Icinga Development Team, http://www.icinga.org