Icinga

Informationen zu den CGI-Parametern

Einführung

Das Menü auf der linken Seite des klassischen Web-Interface enthält Eintrage, die einen schnellen Zugriff auf die Informationen bieten, die die meisten Leute benötigen. Sie können diese Parameter ändern oder auch andere Optionen wählen. Einige CGIs benötigen einen Objekttyp ("host", "hostgroup", "service" oder "servicegroup"), oftmals gefolgt von einer oder mehreren Optionen. Der beste Weg ist es, einen Blick auf die existierenden URLs zu werden und sie Ihren Bedürfnissen anzupassen.

Nachfolgend finden Sie eine Tabelle mit den Parametern und den CGIs, die sie anbieten. Die Namen der CGIs sind abgekürzt (damit die Tabelle nicht so breit wird). Eine Erklärung der Abkürzungen zusammen mit einem Hinweis auf den Source-Code finden Sie hier.

Nach dieser Tabelle folgt eine Erklärung der Parameter (in Bearbeitung).

Properties / Statustypes

Sie können status.cgi benutzen, um Objekte mit einem oder mehreren "Statustypen" (hoststatustype / servicestatustype) und mit bestimmten Eigenschaften (hostprops / serviceprops) anzuzeigen. Jeder Statustyp / jede Eigenschaft wird durch eine Zahl identifiziert (die hier und hier am Ende des Abschnitts zu finden sind). Bitte addieren Sie die entsprechenden Zahlen und setzen die resultierende Summe jeweils bei der Option ein.

Das Beispiel zeigt alle Services im nicht-OK-Zustand, die weder in einer Ausfallzeit (downtime) sind noch bestätigt (acknowledged) wurden:

 http://localhost/icinga/cgi-bin/status.cgi?host=all&servicestatustypes=29&serviceprops=10

"29" enthält auch "PENDING" Services (die seit dem Start noch nicht geprüft wurden).

[Anmerkung] Anmerkung

Bitte beachten Sie, dass "properties" nur die Objekte anzeigt, die ALLE Bedingungen gleichzeitig erfüllen, während bei "statustypes" nur EINE Bedingung erfüllt sein muss (kann).

Matrix Parameter / CGIs

Parameter avail cmd config ext hgram hist notif out log status map sum tac trends
ahas   X                        
alerttypes                       X    
archive           X X   X          
assumeinitialstates X                         X
assumestateretention X       X                 X
assumestatesduringnotrunning X                         X
backtrack X       X                 X
breakdown         X                  
broadcast_notification   X                        
childoptions   X                        
cmd_mod   X                        
cmd_typ   X                        
columns                   X        
com_author   X                        
com_data   X                        
com_id   X                        
contact             X              
createimage         X         X       X
csvoutput X [2] [2] [2] [2] [2] [2] [2] [2] [2]   [2] [2] [2]
displaytype                       X    
down_id   X                        
eday X       X             X   X
ehour X       X             X   X
embedded X     X X X X X X X X X X  
emin X       X             X   X
emon X       X             X   X
end_time   X                        
esec X       X             X   X
eyear X       X             X   X
fixed   X                        
force_check   X                        
force_notification   X                        
full_log_entries X                          
get_date_parts X                          
graphevents         X                  
graphstatetypes         X                  
host X X   X X X X     X   X   X
hostgroup X X   X           X   X    
hostprops                   X        
hoststates                       X    
hoststatustypes X                 X        
hours   X                        
includesoftstates X                          
initialassumedhoststate X                         X
initialassumedservicestate X                         X
initialstateslogged         X                  
input         X                 X
jsonoutput [2][3] X   X X   X X X X X   X X  
limit                       X    
minutes   X                        
navbarsearch                   X        
newstatesonly         X                  
nodowntime           X                
noflapping           X                
nofrills           X     X          
noheader X     X X X X X X X X X X X
not_dly   X                        
notimebreaks           X     X          
nosystem           X                
oldestfirst           X X   X          
performance_data   X                        
persistent   X                        
plugin_output   X                        
plugin_state   X                        
ptc   X                        
report                       X    
report_type X                          
rpttimeperiod X                          
sched_dly   X                        
sday X       X             X    
send_notification   X                        
service X X   X X X X     X       X
servicefilter                   X        
servicegroup X X   X           X   X    
serviceprops                   X        
servicestates                       X    
servicestatustypes                   X        
service_divisor               X            
shour X       X             X    
showscheduleddowntime X                          
show_log_entries X                          
smin X       X             X    
smon X       X             X    
sortoption       X           X        
sorttype       X           X        
ssec X       X             X    
standardreport                       X    
start_time   X                        
statetype           X                
statetypes                       X    
sticky_ack   X                        
style                   X        
syear X       X             X   X
t1 X       X             X   X
t2 X       X             X   X
timeperiod X       X             X   X
trigger   X                        
type     X X   X X              

Einzelheiten zu den Parametern

Mehr Informationen zu den einzelnen Parametern finden Sie nachfolgend. Für ein tiefergehendes Verständnis sollten Sie einen Blick auf den Source-Code werfen.

Parameter Beschreibung Mögl. Werte Beispiel Anmerkungen
ahas Der Befehl beeinflusst den Host und seine Services   ahas  
alerttypes Host- und/oder Service-Alarme anzeigen 1=Host-Alarme; 2=Service-Alarme; 3=Host- und Service-Alarme alerttypes=3  
archive   0-n    
assumeinitialstates   yes; no    
assumestatesduringnotrunning   yes; no    
assumestateretention   yes; no    
backtrack Wieviele Archiv-Log-Dateien sollen durchsucht werden, um den initialen Zustand zu ermitteln 0-n backtrack=1 Bitte beachten Sie, dass die Verarbeitung der Archivdateien eine Weile dauern kann
breakdown Aufteilen der Daten nach Zeitbereich 0=monatlich; 1=Tag des Monats; 2=Tag der Woche; 3=stündlich breakdown=2  
broadcast_notification Benachrichtigung an alle Kontakte versenden ("non-escalated" und "escalated")   broadcast_notification  
childoptions Ausfallzeitbehandlung für abhängige Hosts 0=ohne Berücksichtigung von abh. Hosts; 1="triggered downtime" für abh. Hosts planen; 2="non-triggered downtime" für abh. Hosts planen childoptions=1  
cmd_mod Command mode      
cmd_typ Command type 0 - 169, 999 cmd_typ=160 Einzelheiten siehe .../include/common.h
columns Anzahl von Übersichtsspalten >= 1   Default ist 3
com_author Autor des Kommentars ein gültiger Benutzer com_author=icingaadmin Kann ggf. von der Einstellung von "lock_author_names" in cgi.cfg abhängen
com_data Inhalt des Kommentars eine Zeichenkette (urlencoded)    
com_id Id des Kommentars      
contact Ein gültiger Kontakt als Mail-Empfänger      
createimage     createimage  
csvoutput Ob die Ausgabe im CSV-Format sein soll yes;no   Diese Option setzt automatisch "noheader". In fast allen CGIs verfügbar (siehe [2])
displaytype Typ der Alarmauswertung 1=recent alerts; 2=alert totals; 3=top alerts; 4=hostgroup alert totals; 5=host alert totals; 6=service alert totals; 7=servicegroup alert totals    
down_id ID der Ausfallzeit      
eday Ende des maßgeschneiderten Zeitfensters (Tag)     Nur gültig bei "maßgeschneiderten" Zeitfenstern
ehour Ende des maßgeschneiderten Zeitfensters (Stunde)     Nur gültig bei "maßgeschneiderten" Zeitfenstern
embedded verschiedenen HTML-Code und SSI-header/footer weglassen   embedded  
emin Ende des maßgeschneiderten Zeitfensters (Minute)     Nur gültig bei "maßgeschneiderten" Zeitfenstern
emon Ende des maßgeschneiderten Zeitfensters (Monat)     Nur gültig bei "maßgeschneiderten" Zeitfenstern
end_time Endzeit der festen Ausfallzeit     Format "MM-DD-YYYY HH:MI"
esec Ende des maßgeschneiderten Zeitfensters (Sekunde)     Nur gültig bei "maßgeschneiderten" Zeitfenstern
eyear Ende des maßgeschneiderten Zeitfensters (Jahr)     Nur gültig bei "maßgeschneiderten" Zeitfenstern
fixed Feste oder flexible Ausfallzeit 0=flexible, >0=fixed    
force_check Die Service-Prüfung wird erzwungen   forcecheck  
force_notification Benachrichtigung ungeachtet von Restriktionen versenden (Zeitfenster oder andere)   force_notification  
full_log_entries Vollständige oder gekürzte Log-Eintrage anzeigen   full_log_entries Default ist gekürzte Ansicht
get_date_parts maßgeschneiderte Zeitbereiche ermitteln   get_date_parts  
graphevents Welche Objekte in welchem Zustand dargestellt werden sollen   graphevents=112 (alle Service-Probleme) Ein logisches ODER von: 1=Host up; 2=Host down; 4=Host unreachable; 8=Service OK; 16=Service Warning; 32=Service Unknown; 64=Service Critical
graphstatetypes Hard- und/oder Soft-Zustande darstellen 1=Soft-states; 2=Hard states; 3=Hard- und Soft-states graphstatetypes=3  
host Alle Hosts oder einen bestimmten Host auswählen, dessen Service angezeigt werden sollen all; <host name> host=monitor Spezielle Zeichen im Namen müssen kodiert werden ("urlencoded", z.B. "%20" statt eines Leerzeichens)
hostgroup Alle Hostgruppen oder eine bestimmte Hostgruppe auswählen, deren Hosts und Services angezeigt werden sollen all; <hostgroup name> hostgroup=linux-boxes Spezielle Zeichen im Namen müssen kodiert werden ("urlencoded", z.B. "%20" statt eines Leerzeichens)
hostprops Alle Hosts auswählen, die dem angegebenen Bitmuster entsprechen. Bitte beachten Sie, dass die Hosts ALLE angegebenen Bedingungen entsprechen müssen   hostprops=131088 (aktive Prüfungen, die deaktiviert sind) Ein logisches ODER der Bedingungen, die in include/cgiutils.c angegeben sind [1] (HOST AND SERVICE FILTER PROPERTIES)
hoststates Der Zustand, in dem der Host sein sollte 1 - 7 hoststates=3 (Hosts in einem Problemzustand) Ein logisches ODER der Zustände: 1=DOWN; 2=UNREACHABLE; 4=UP
hoststatustypes Der Zustand, in dem der Host sein sollte 1 - 15 hoststatustypes=12 (Hosts in einem Problemzustand) Ein logisches ODER der Zustände: 1=Pending; 2=Up; 4=Down; 8=Unreachable
hours Dauer der flexiblen Ausfallzeit in Stunden (siehe "minutes") >= 0   Nur gültig für flexible Ausfallzeiten
includesoftstates "soft"-Zustände einschließen yes; no includesoftstate=yes Default: "soft"-Zustände nicht berücksichtigen
initialassumedhoststate        
initialassumedservicestate        
initialstateslogged        
input        
jsonoutput Ob die Ausgabe im json-Format sein soll yes;no   Diese Option setzt automatisch "noheader". In fast allen CGIs verfügbar (siehe [2])
limit max. Anzahl von anzuzeigenden Einträgen 1-n limit=10 Default ist 25
minutes Dauer der flexiblen Ausfallzeit (siehe "hours") >= 0    
navbarsearch        
newstatesonly Nur "neue" Zustände anzeigen yes; no newstatesonly=yes Default: alle Zustände anzeigen
nodowntime Ausfallzeiten nicht anzeigen   nodowntime  
noflapping "Flatter"-Alarme nicht anzeigen   noflapping  
nofrills Don't display frills (?)   nofrills  
noheader Globale Statusinformationen weglassen und nur Status-Details anzeigen   noheader  
not_dly Benachrichtigung um n Minuten verzögern >= 0    
notimebreaks Don't display timebreaks (?)      
nosystem Keine Systemmeldungen anzeigen   nosystem Default: Systemmeldungen (des Icinga-Prozesses) anzeigen
oldestfirst Sortierreihenfolge umdrehen   oldestfirst Default: aktuelles Einträge zuerst anzeigen
performance_data Die als Performance-Daten zu sendende Zeichenkette      
persistent Der Kommentar ist persistent, wenn diese Option gesetzt ist   persistent  
plugin_output Die als Plugin-Output zu sendende Zeichenkette     Die Länge ist begrenzt durch den Wert von MAX_INPUT_LENGTH (festgelegt während des Compile-Vorgangs)
plugin_state Zustand des Plugins festlegen 0=OK; 1=Warning; 2=Critical; 3=Unknown plugin_state=2  
ptc Der Befehl wird an abhängige Hosts propagiert   ptc  
report Report erzeugen   report  
report_type Reporttyp auswählen hostgroups; servicegroups; hosts; services report_type=hostgroups  
rpttimeperiod Angeben eines Zeitfensters, die für den Availability-Bericht benutzt wird Eins der definierten Zeitfenster   Benutzen Sie den Kurznamen der Zeitfenster-Definition
sched_dly Befehlsausführung um n Minuten verzögern >= 0    
sday Start des maßgeschneiderten Zeitfensters (Tag)      
send_notification Eine Benachrichtigung für die Bestätigung senden   send_notification  
service Alle oder einen bestimmten Service auswählen, der angezeigt werden soll all; <service description> service=PING Spezielle Zeichen im Namen müssen kodiert werden ("urlencoded", z.B. "%20" statt einen Leerzeichens)
servicefilter Nur Service selektieren, deren Beschreibung auf das angegebene Muster passt   servicefilter=Current; servicefilter=[PL] Das Muster ist abhängig von Groß-/Kleinschreibung. Reguläre Ausdrucke scheinen zu funktionieren
servicegroup Alle oder eine bestimmte Servicegruppe auswählen, deren Hosts und Services angezeigt werden sollen all; <servicegroup name> servicegroup=disk Spezielle Zeichen im Namen müssen kodiert werden ("urlencoded", z.B. "%20" statt einen Leerzeichens)
serviceprops Alle Services auswählen, die dem angegebenen Bitmuster entsprechen. Bitte beachten Sie, dass die Services ALLE angegebenen Bedingungen entsprechen müssen   serviceprops=131088 (aktive Prüfungen, die deaktiviert sind) Ein logisches ODER der Bedingungen, die in include/cgiutils.c angegeben sind [1] (HOST AND SERVICE FILTER PROPERTIES)
servicestates Zustand, in dem die Services sein sollten   servicestates=56 (Services in einem Problemzustand) Ein logisches ODER der Zustände: 8=Warning; 16=Unknown; 32=Critical; 64=OK
servicestatustypes Zustand, in dem die Services sein sollten 1 - 31 servicestatustype=28 (services in problem state) Ein logisches ODER der Zustände: 1=Pending; 2=OK, 4=Warning; 8=Unknown; 16=Critical
service_divisor Wichtigkeit der Service in Relation zu Hosts >=1   Services sind 1/n so wichtig wie Hosts. Default: n=4
shour Start des maßgeschneiderten Zeitfensters (Stunde)     Nur gültig für flexible Ausfallzeiten
showscheduleddowntime Geplante Ausfallzeiten anzeigen yes; no   Default: yes
show_log_entries Log-Eintrage anzeigen   show_log_entries Default: keine Log-Einträge anzeigen
smin Start des maßgeschneiderten Zeitfensters (Minute)     Nur gültig für flexible Ausfallzeiten
smon Start des maßgeschneiderten Zeitfensters (Monat)     Nur gültig für flexible Ausfallzeiten
sortoption Angeben der Spalte, nach der sortiert werden soll 1-n sortoption=3 Default ist Spalte 1
sorttype Sortierrichtung für die Spalte, die über "sortoption=<n>" angegeben wurde 1=ascending; 2=decending sorttype=2  
ssec Start des maßgeschneiderten Zeitfensters (Sekunde)     Nur gültig für flexible Ausfallzeiten
standardreport Standard-Report 1=recent alerts; 2=recent host alerts; 3=recent service alerts; 4=top host alert producers; 5=top service alert producers    
start_time Start der festen Ausfallzeit     Format "MM-DD-YYYY HH:MI" (kann ggf. von Ihren Ländereinstellungen abhängen, das ist aber unklar)
statetype Hard- und/oder Soft-states 0=Hard- und Soft-states; 1=Soft-states; 2=Hard-states statetype=2  
statetypes Hard- und/oder Soft-states 1=Soft-states; 2=Hard-states; 3=Hard- und Soft-states statetypes=2  
sticky_ack Die Bestätigung ist "sticky"   sticky_ack  
style Angabe der anzuzeigenden Informationen overview; detail; summary; grid; hostdetail   Trifft nur auf die Objekttypen "hostgroups" und "servicegroups" zu; hostdetail=host status details; detail=service status details; summary=status summary; grid=status grid;
syear Start des maßgeschneiderten Zeitfensters (Jahr)     Nur gültig für flexible Ausfallzeiten
t1 Startpunkt eines maßgeschneiderten Zeitfensters   t1=1296109300 Unix timestamp
t2 Endpunkt eines maßgeschneiderten Zeitfensters   t2=1296189360 Unix timestamp
timeperiod Zeitfenster, das für den "Availability report" benutzt werden soll today; yesterday; thisweek; lastweek; thismonth; lastmonth; thisquarter; lastquarter; thisyear; lastyear; last24hours; last7days; last31days; custom timeperiod=lastmonth  
trigger Die Ausfallzeit wird von der Downtime-ID <n> ausgelöst Eine gültige Downtime-ID    
type Objekttyp hosts; hostgroups; services; servicegroups; contacts; contactgroups; timeperiods; commands; hostescalations; serviceescalations; hostdependencies; servicedependencies type=hosts  

Abkürzungen, CGIs, Verweise

Abkürzungen, die in der ersten Tabelle benutzt werden, Beziehungen zu CGIs- und Menüeintragen sowie Verweise auf den Source-Code in <icinga-core>/cgis.

Abkurzung CGI Menueintrag Source-Code
avail avail.cgi Availability avail.c
cmd cmd.cgi N/A cmd.c
config config.cgi Configuration config.c
ext extinfo.cgi Comments, Downtime, Process Info, Performance Info, Schedulung Info extinfo.c
hgram histogram.cgi Alert Histogram histogram.c
hist history.cgi Alert History history.c
notif notifications.cgi Notifications notifications.c
out outages.cgi Network Outages outages.c
log showlog.cgi Event Log showlog.c
status status.cgi Hostgroup Overview, Servicegroup Overview, Host Problems, Service Problems status.c
map statusmap.cgi Status Map statusmap.c
summary summary.cgi Alert Summary summary.c
tac tac.cgi N/A tac.c
trends trends.cgi Trends trends.c

Ausschnitt aus include/cgiutils.h

/****************** HOST AND SERVICE FILTER PROPERTIES  *******************/

#define HOST_SCHEDULED_DOWNTIME         1
#define HOST_NO_SCHEDULED_DOWNTIME      2
#define HOST_STATE_ACKNOWLEDGED         4
#define HOST_STATE_UNACKNOWLEDGED       8
#define HOST_CHECKS_DISABLED            16
#define HOST_CHECKS_ENABLED             32
#define HOST_EVENT_HANDLER_DISABLED     64
#define HOST_EVENT_HANDLER_ENABLED      128
#define HOST_FLAP_DETECTION_DISABLED    256
#define HOST_FLAP_DETECTION_ENABLED     512
#define HOST_IS_FLAPPING                1024
#define HOST_IS_NOT_FLAPPING            2048
#define HOST_NOTIFICATIONS_DISABLED     4096
#define HOST_NOTIFICATIONS_ENABLED      8192
#define HOST_PASSIVE_CHECKS_DISABLED    16384
#define HOST_PASSIVE_CHECKS_ENABLED     32768
#define HOST_PASSIVE_CHECK              65536
#define HOST_ACTIVE_CHECK               131072
#define HOST_HARD_STATE                 262144
#define HOST_SOFT_STATE                 524288

#define SERVICE_SCHEDULED_DOWNTIME      1
#define SERVICE_NO_SCHEDULED_DOWNTIME   2
#define SERVICE_STATE_ACKNOWLEDGED      4
#define SERVICE_STATE_UNACKNOWLEDGED    8
#define SERVICE_CHECKS_DISABLED         16
#define SERVICE_CHECKS_ENABLED          32
#define SERVICE_EVENT_HANDLER_DISABLED  64
#define SERVICE_EVENT_HANDLER_ENABLED   128
#define SERVICE_FLAP_DETECTION_ENABLED  256
#define SERVICE_FLAP_DETECTION_DISABLED 512
#define SERVICE_IS_FLAPPING             1024
#define SERVICE_IS_NOT_FLAPPING         2048
#define SERVICE_NOTIFICATIONS_DISABLED  4096
#define SERVICE_NOTIFICATIONS_ENABLED   8192
#define SERVICE_PASSIVE_CHECKS_DISABLED 16384
#define SERVICE_PASSIVE_CHECKS_ENABLED  32768
#define SERVICE_PASSIVE_CHECK           65536
#define SERVICE_ACTIVE_CHECK            131072
#define SERVICE_HARD_STATE              262144
#define SERVICE_SOFT_STATE              524288

Excerpt from include/statusdata.h

/*************************** SERVICE STATES ***************************/
#define SERVICE_PENDING  1
#define SERVICE_OK       2
#define SERVICE_WARNING  4
#define SERVICE_UNKNOWN  8
#define SERVICE_CRITICAL 16

/**************************** HOST STATES ****************************/
#define HOST_PENDING     1
#define HOST_UP          2
#define HOST_DOWN        4
#define HOST_UNREACHABLE 8

[1] Logisches ODER bedeutet, dass die jeweiligen Zahlen addiert werden. Es werden dann die Objekte angezeigt, die ALLE Bedingungen erfüllen.

[2] Verfügbar ab Icinga 1.4.

[3] avail, log, notif, out, status, sum: Alle Views/Reports unterstützen jsonoutput; config: Alle Typen außer command expansion; ext: Alle Views außer hostgroup/servicegroup info (immer außer Performance-Daten); tac: Datenausgabe im json-Format. Mehr Informationen finden Sie im Icinga-Wiki.