Livestatus: Befehlsreferenz


Dieser Artikel ist noch nicht fertig und nur ein Entwurf!

1. Verfügbare Tabellen

Im Livestatus stehen Ihnen die folgenden Tabellen zur Verfügung. Manche verfügen zusätzlich noch über die Spalten einer anderen Tabelle. Diese Spalten werden dann mit dem Tabellennamen als Präfix gekennzeichnet:

Tabelle Kommentar
hosts Enthält alle Informationen zu den konfigurierten Hosts.
services Enthält alle Informationen zu den konfigurierten Services und zusätzlich die Spalten aus hosts.
hostgroups Informationen zu den Hostgruppen.
servicegroups Informationen zu den Servicegruppen.
contactgroups Informationen zu den Kontaktgruppen.
servicesbygroup Wie services, aber zusätzlich mit den Spalten aus servicegroups.
servicesbyhostgroup Wie services, aber zusätzlich mit den Spalten aus hostgroups.
hostsbygroup Wie hosts, aber zusätzlich mit den Spalten aus hostgroups.
contacts Informationen zu den Kontakten.
commands Alle konfigurierten Check-Commands, wie sie bei einem Service unter Service check command stehen.
timeperiods Alle Informationen zu konfigurierten Zeitperioden.
downtimes Wie timeperiods, nur für Wartungszeiten.
comments Enthält alle Informationen zu Kommentaren und zusätzlich die Spalten von hosts und services.
log Alle Informationen zu mitgeschriebenen Ereignissen. Diese sollten nach Klasse und Zeitpunkt/Zeitraum gefiltert werden.
status Informationen zu dem Status und der Performance des Cores.
columns Alle verfügbaren Tabellen werden hier aufgelistet. Zusätzlich gibt es auch eine Beschreibung zu jeder Spalte einer Tabelle.
statehist Mit dieser Tabelle kann die Status-Vergangenheit eines Hosts/Services umfangreich durchsucht werden.
eventconsoleevents Listet alle Events der Event Console. Zusätzlich verfügt diese Tabelle über alle Spalten von hosts.
eventconsolehistory Wie eventconsoleevents nur zusätzlich noch mit Spalten zur Historie eines Events.
eventconsolestatus Listet Statistiken zu der Performance der Event Console.
eventconsolerules Statistiken darüber, wie oft ein Regelabgleich mit einem ankommenden Event erfolgreich war.

Wenn Sie wissen möchten, über welche Spalten (Columns) eine Tabelle verfügt, können Sie diese einfach mit dem folgenden Befehl abrufen:

OMD[mysite]:~$ lq "GET columns\nColumns: name\nFilter: table = columns"
description
name
table
type

Über den Filter lassen sich auch andere Tabellen auswählen. Alle verfügbaren Spalten für die Suche nach Spalten und Tabellen sehen Sie in der Ausgabe des Beispiels.

2. Verfügbare Header

Header Argument Beschreibung
Columns Spaltenname Schränkt die Ausgabe auf die angegebenen Spalten ein.
Filter Spaltenname, Operator und Objektname Schränkt die Ausgabe auf das definierte Objekt ein. Siehe auch Livestatus-Filter.
Or Ganzzahl Verbindet die letzten n Filter mit einem logischen ODER.
And Ganzzahl Verbindet die letzten n Filter mit einem logischen UND.
Negate Ganzzahl Kehrt die letzten n Filter um.
Separators ASCII-Werte Definiert die Zeichen, welche die Trennung eines Elements von einem anderen anzeigt.
OutputFormat Name Definiert eine komplett andere Ausgabe der Daten. Möglich sind json, python, python3, CSV und csv (Standardausgabe).
Stats Operator und Spaltenname Bildet Statistiken zu bestimmten Spalten.
StatsOr Ganzzahl Bietet die Funktionen des OR-Headers in den Statistiken.
StatsAnd Ganzzahl Bietet die Funktionen des AND-Headers in den Statistiken.
StatsNegate Ganzzahl Bietet die Funktionen des NEGATE-Headers in den Statistiken.
Limit Ganzzahl Beschränkt die Ausgabe auf n Zeilen.
Timelimit Ganzzahl Schränkt die Verarbeitung der Abfrage auf n Sekunden ein.
ColumnHeaders - Gibt in der ersten Zeile die Namen der verwendeteten Spalten aus. Ist zusätzlich der Header ResponseHeader gesetzt, werden die Namen der Spalten in der zweiten Zeile ausgegeben.
AuthUser Benutzername Schränkt die Ausgabe auf die Zeilen ein, die der angegebene Benutzer sehen darf.
WaitObject Objektname Das Objekt, bei dem ein bestimmtes Verhalten erwartet wird. Das ist der Name des Objekts bzw. bei der Tabelle services der Name des Hosts gefolgt von einem Leerzeichen und der Servicebeschreibung. Wenn der Hostname selbst Leerzeichen enthält, können die zwei Elemente auch mit einem Semikolon getrennt werden. Dieser Header wird nur von den Tabellen hosts, services hostgroups servicegroups contacts und contactgroups unterstützt.
WaitCondition Filterbedingung Die Bedingung, die für das definierte Objekt erfüllt sein muss. Es können beliebig viele Bedingungen definiert werden; diese werden mit einem logischen und miteinander verknüpft.
WaitConditionOr Ganzzahl Bietet die Funktionen des OR-Headers in den Wait-Bedingungen.
WaitConditionAnd Ganzzahl Bietet die Funktionen des AND-Headers in den Wait-Bedingungen.
WaitConditionNegate Ganzzahl Bietet die Funktionen des NEGATE-Headers in den Wait-Bedingungen.
WaitTrigger Schlüsselwort* Schlüsselwörter wirken wie eine normale Bedingung, wenn sie allein eingesetzt werden. In Kombination mit der WaitCondition erleichtert es das Auffinden von relevanten Logeinträgen und reduziert den Overhead im Livestatus.
WaitTimeout Ganzzahl Setzt eine Zeitbeschränkung in Millisekunden. Danach, z. B. nach 5000 Millisekunden (5 Sekunden), wird die Abfrage ausgeführt, auch wenn die Bedingung nicht erfüllt ist.
Localtime Unix-Zeit Versucht durch Angabe einer Referenzzeit voneinander abweichende Zeitstempel in verteilten Umgebungen auszugleichen.
ResponseHeader fixed16/off Gibt eine Statuszeile in der ersten Zeile der Antwort zurück. Die Ausgabe bleibt selbst dann in der ersten Zeile, wenn zusätzlich der Header ColumnHeaders gesetzt wurde.
KeepAlive on Verhindert, dass der Livestatus-Kanal nach einer Abfrage geschlossen wird.

* Für den WaitTrigger gibt es folgende Schlüsselwörter:

  • check
  • state
  • log
  • downtime
  • comment
  • command
  • program
  • all

3. Operatoren für Filter

3.1. Allgemeine Operatoren

Operator* Bei Zahlen Bei Zeichenketten
= Gleichheit Gleichheit.
~ Obermenge** Enthält eine Zeichenfolge als regulären Ausdruck.
=~ Untermenge** Schreibungsunabhängige Gleichheit.
~~ enthält mindestens einen der Werte** Enthält eine schreibungsunabhängige Zeichenfolge als regulären Ausdruck.
< kleiner als Lexikografisch kleiner als.
> größer als Lexikografisch größer als.
<= kleiner oder gleich Lexikografisch kleiner oder gleich.
>= größer oder gleich Lexikografisch größer oder gleich.

* Alle Operatoren können mit einem Ausrufezeichen (!) negiert werden.

** Diese Operatoren sind nützlich, wenn mit Listen gearbeitet wird. Livestatus interpretiert die angegebenen Werte dann als eine Menge.

3.2. Operatoren für Listen

Mit den folgenden Operatoren können Sie prüfen, ob ein Element in einer Liste enthalten ist:

Operator Art der Prüfung
= Prüft auf eine leere Liste*.
>= Gleichheit.
< Ungleichheit.
<= Schreibungsunabhängige Gleichheit.
> Schreibungsunabhängige Ungleichheit.
~ Die Zeichenkette eines regulären Ausdrucks*.
~~ Die schreibungsunabhängige Zeichenkette eines regulären Ausdrucks*.

* Dieser Operator kann mit einem Ausrufezeichen negiert werden.

4. Operatoren für Statistiken

Operator Beschreibung
sum Bildet eine Summe aus den Werten.
min Sucht den kleinsten Wert heraus.
max Sucht den größten Wert heraus.
avg Erstellt einen Durchschnittswert (Mittelwert).
std Gibt die Standardabweichung aus.
suminv Invertiert die Summe aus den Werten gemäß 1/sum.
avginv Invertiert den Mittelwert aus den Werten gemäß 1/avg.

5. Statuscodes des ResponseHeader

Statuscode Beschreibung
200 Der Aufruf war erfolgreich und die Antwort enthält die abgefragten Daten.
400 Der Aufruf enthält einen fehlerhaften Header.
404 Die Tabelle konnte nicht gefunden werden.
413 Das Zeitlimit der Abfrage wurde überschritten.
451 Die Abfrage wurde nicht vollständig übergeben.
452 Die Abfrage ist komplett ungültig.

6. Commands

Die folgenden Kommandos stehen Ihnen bei dem CMC der  Check_MK Enterprise Edition zur Verfügung:

Kommando Beschreibung
ACKNOWLEDGE_HOST_PROBLEM
ACKNOWLEDGE_SVC_PROBLEM
ADD_HOST_COMMENT
ADD_SVC_COMMENT
CHANGE_HOST_MODATTR
CHANGE_SVC_MODATTR
DEL_HOST_COMMENT
DEL_HOST_DOWNTIME
DEL_SVC_COMMENT
DEL_SVC_DOWNTIME
DISABLE_EVENT_HANDLERS
DISABLE_FLAP_DETECTION
DISABLE_HOST_CHECK
DISABLE_HOST_NOTIFICATIONS
DISABLE_HOST_SVC_NOTIFICATIONS
DISABLE_NOTIFICATIONS
DISABLE_PASSIVE_HOST_CHECKS
DISABLE_PASSIVE_SVC_CHECKS
DISABLE_PERFORMANCE_DATA
DISABLE_SVC_CHECK
DISABLE_SVC_NOTIFICATIONS
ENABLE_EVENT_HANDLERS
ENABLE_FLAP_DETECTION
ENABLE_HOST_CHECK
ENABLE_HOST_NOTIFICATIONS
ENABLE_HOST_SVC_NOTIFICATIONS
ENABLE_NOTIFICATIONS
ENABLE_PASSIVE_HOST_CHECKS
ENABLE_PASSIVE_SVC_CHECKS
ENABLE_PERFORMANCE_DATA
ENABLE_SVC_CHECK
ENABLE_SVC_NOTIFICATIONS
LOG
MK_LOGWATCH_ACKNOWLEDGE
MODIFY_HOST_DOWNTIME
MODIFY_SVC_DOWNTIME
PROCESS_HOST_CHECK_RESULT
PROCESS_HOST_PERFDATA
PROCESS_SERVICE_CHECK_RESULT
PROCESS_SVC_PERFDATA
RELOAD_CONFIG
REMOVE_HOST_ACKNOWLEDGEMENT
REMOVE_SVC_ACKNOWLEDGEMENT
REOPEN_DAEMONLOG
ROTATE_LOGFILE
SAVE_STATE_INFORMATION
SCHEDULE_FORCED_HOST_CHECK
SCHEDULE_FORCED_SVC_CHECK
SCHEDULE_HOST_DOWNTIME
SCHEDULE_SVC_DOWNTIME
SEGFAULT
SEND_CUSTOM_HOST_NOTIFICATION
SEND_CUSTOM_SVC_NOTIFICATION
START_EXECUTING_HOST_CHECKS
START_EXECUTING_SVC_CHECKS
STOP_EXECUTING_HOST_CHECKS
STOP_EXECUTING_SVC_CHECKS
UPDATE_SHADOW_HOST_STATE
UPDATE_SHADOW_SERVICE_STATE