NagiosGrapher Konfiguration
NagiosGrapher ist ein Add-On für Nagios zur graphischen Darstellung von Performancecharts. Dieser Artikel beschreibt die Konfiguration von NagiosGrapher.
Inhaltsverzeichnis |
NagiosGrapher Parameter
Damit NagiosGrapher Grafiken für ein Service zeichnet muss eine NagiosGrapher Konfiguration auf den gewünschten Service zutreffen. Das folgende Tabelle zeigt die möglichen Konfigurationsparameter:
| Parameter | Bedeutung |
|---|---|
| service_name | Suchmuster für den Service-Namen in Nagios:
|
| graph_log_regex | Regulärer Ausdruck (Perl Regular Expression), der den zu speichernden Wert aus dem normalen Plugin-Output (Status Information) herausfiltert[1] |
| graph_perf_regex | Regulärer Ausdruck (Perl Regular Expression), der den zu speichernden Wert aus dem Performance-Data Plugin-Output (Performance Data) herausfiltert[2] |
| graph_value | Name der Variablen in der RRD-Datenbank (keine Sonderzeichen/Leerzeichen, aber Underscore _ erlaubt). graph_value darf maximal 19 Zeichen lang sein. |
| graph_units | Beschriftung der y-Achse |
| graph_legend | Text in der Legende des Diagramms |
| rrd_plottype | Darstellungsart des Graphen. Mögliche Werte:
|
| rrd_color | Farbe der Linie bzw. der Fläche im Diagramm |
| page | Wenn ein Plugin mehrere Werte liefert können diese Werte über einzelne Seiten abgefragt werden. Beispiel: check_ping liefert in den Performance-Daten z.B. rta (Response time average) und pl (Packet Loss). Siehe dazu auch check_ping.ncfg als Beispiel (bei Debian unter /etc/nagiosgrapher/ngraph.d/standard/check_ping.ncfg). Es können damit also mehrere ngraph Definitionen gemacht werden.
Hinweis: sobald eine ngraph Definition keine gültigen Werte enthält, wird für den Service kein Graph gezeichnet und es werden keine Daten erfasst.[3] In /var/log/nagiosgrapher/ngraph.log sieht dies z.B. so aus (für die Lüfter Fan3 und Fan4 gibt es hier ein ngraph Definition, der Server hat diese Lüfter aber nicht): 2009-10-12 11:42:06 PIPE: examplehost Fans Fan Status: Warning Fan1=6480 Fan2=7020 Fan5=5535 Fan6=5265 Fan7=7020n 2009-10-12 11:42:06 VALUES: [examplehost][Fans]:No matching perfdata values found... |
| type | Optional können über den type Parameter noch weitere Dinge gezeichnet/dargestellt werden:
|
Beispiel mit graph_log_regex
Der folgende Inhalt zeigt /etc/nagiosgrapher/ngraph.d/standard/check_users.ncfg - ein einfaches Beispiel für die Verwendung von graph_log_regex:
#---
#NagiosGrapherTemplateforcheck_users
#Author:MariusHein
#---
define ngraph{
service_name USERS
graph_log_regex ([0-9]+)\s*users
graph_value user
graph_units users
graph_legend Logged in users
rrd_plottype AREA
rrd_color 0066c0
}
#[EOF]
Beispiel mit graph_perf_regex
Das folgende Beispiel zeigt die Konfiguration von check_fan_sr2500-6fans.ncfg. Damit werden die Lüfterdrehzahlen eines Intel SR2500 dargestellt. Das IPMI Plugin liefert dazu folgende Performance an Nagios:
Performance Data: 'Fan 1'=5805 'Fan 2'=6321 'Fan 3'=5805 'Fan 4'=6278 'Fan 5'=9052 'Fan 6'=8122
Zuerst wird ein ngraph für die Erfassung der Drehzahl des ersten Lüfters definiert:
define ngraph{
service_name SR2500-6fans
graph_perf_regex 1=(\d+)
graph_value Fan1
graph_units RPM
graph_legend Fan 1 speed:
rrd_plottype LINE2
rrd_color 00008B
page Fan 1
}
Nun wird noch die Beschriftung verfeinert. Diese Definition zeigt den letzten (aktuellen) Wert in der Legende:
define ngraph{
service_name SR2500-6fans
type GPRINT
print_source Fan1
print_description Latest:
print_function LAST
print_format %2.2lf
}
Diese Definition zeigt den Minimal-Wert in der Legende:
define ngraph{
service_name SR2500-6fans
type GPRINT
print_source Fan1
print_description Minimum:
print_function MIN
print_format %2.2lf
}
Diese Definition zeigt den Maximal-Wert in der Legende:
define ngraph{
service_name SR2500-6fans
type GPRINT
print_source Fan1
print_description Maximum:
print_function MAX
print_format %2.2lf
}
Diese Definition zeigt den Durchschnitts-Wert in der Legende:
define ngraph{
service_name SR2500-6fans
type GPRINT
print_source Fan1
print_description Average:
print_function AVERAGE
print_format %2.2lf
print_eol left
}
Weiters folgen die entsprechenden Definitionen für die weiteren Lüfter:
define ngraph{
service_name SR2500-6fans
graph_perf_regex 2=(\d+)
graph_value Fan2
graph_units RPM
graph_legend Fan 2 speed:
rrd_plottype LINE2
rrd_color 006400
page Fan 2
}
[...]
Tip: Für die Definition der unterschiedlichen Farben ist z.B. http://de.selfhtml.org/diverses/anzeige/farbnamen_netscape.htm hilfreich.
Die Darstellung sieht dann wie folgt aus:
Multigraphen
Multigraphen fassen mehrere (bestehende) einzelne Graphen in einem sogenannten Multigraph zusammen. Die Daten für Multigraphen müssen also zuerst über einzelne Graphen erfasst werden.[4]
RRDtool
Zur Darstellung verwendet NagiosGrapher RRDtool. RRD steht dabei für Round-Robin-Database. Unter Debian werden die NagiosGrapher RRD Daten in folgendem Verzeichnis abgelegt:
- /var/lib/nagiosgrapher/rrd/
Einzelnachweise
- ↑ Nagios Plugin API siehe den dort rot angeführten Text TEXT OUTPUT
- ↑ Nagios Plugin API siehe den dort orange angeführten Text OPTIONAL PERFDATA
- ↑ http://www.icinga-portal.org/wbb/index.php?page=Thread&postID=83167#post83167
- ↑ http://www.nagios-portal.org/wbb/index.php?page=Thread&postID=87084#post87084
Weitere Informationen
- http://www.netways.de/de/produkte/nagios_addons/nagiosgrapher/
- Dokumentation - NagiosGrapher
- http://www.nagios-wiki.de/nagios/howtos/nagiosgrapher
- http://www.nagioswiki.org/wiki/HowTos:BestPractice:NagiosGrapher