Checkmk
to checkmk.com

1. Einleitung

Die wichtigste Aufgabe der Benutzeroberfläche von Checkmk ist das Anzeigen des aktuellen Status von Hosts und Services. Dies geschieht größtenteils in tabellarischen Ansichten, welche in der englischen Oberfläche mit Views bezeichnet werden. Damit das tägliche Arbeiten mit Checkmk so effizient wie möglich abläuft, bieten diese Tabellenansichten zahlreiche nützliche Funktionen und Sie können sie an Ihre Anforderungen anpassen.

1.1. Global oder Kontext-abhängig

Wir unterscheiden zwischen globalen Views und solchen, die einen Kontext benötigen. Globale Views können immer direkt aufgerufen werden. Ein Beispiel ist die Liste aller aktuellen Service-Probleme. Einen Kontext benötigt z.B. die Ansicht Status of Host …​  —  nämlich die Angabe desjenigen Hosts, dessen Status angezeigt werden soll. Solche Views können nur in Situationen aufgerufen werden, in denen es um einen bestimmten Host geht.

Globale Ansichten

Die globalen Ansichten erreichen Sie am einfachsten über das Monitor-Menü.

monitor menu less

Alternativ können Sie auch die Seitenleistenelemente Overview und Views nutzen. In der Overview ist jede der Zahlen anklickbar und bringt Sie zu einer globalen Ansicht, die die jeweils gezählten Hosts oder Services einzeln auflistet.

views tactical overview

Im Views-Element sind alle globalen Ansichten erreichbar  —  gruppiert nach Thema. Zudem finden Sie einige Einträge, die eigentlich keine Views sind  — wie z.B. die Dashboards, welche unter dem Thema Overview einsortiert sind. Dashboards können aber Views enthalten.

views snapin views

Von einer globalen Ansicht aus gelangen Sie zu den Einzelheiten eines bestimmten Hosts oder Services in einem weiteren Schritt. Die Namen von Hosts und Services und auch andere Spalten in den einzelnen Zellen sind anklickbar … :

views all hosts

… und bringen Sie zu (kontext-abhängigen) Detailansichten.

Kontext-abhängige Ansichten

In Ansichten, die einen bestimmten Host oder Service betreffen, finden Sie in den Menüs Host beziehungsweise Service wiederum allerlei Einträge, die Sie dann zu weiteren Ansichten mit demselben Kontext bringen  —  also von demselben Host oder Service.

views context buttons

Sie können Host- und Service-spezifische Ansichten auch über die Suche im Monitor-Menü erreichen:

views monitor search

Ein weiterer Weg zu Detailansichten ist die Schnellsuche in der Seitenleiste:

views snapin quicksearch

Zu welcher Ansicht Sie jeweils gelangen, hängt vom Ergebnis der Suche ab. Wenn die Suche einen Host eindeutig ermittelt, dann gelangen Sie direkt zur Seite Services of host …​ dieses Hosts. Dort finden Sie dann wieder die Menüpunkte zu den anderen Ansichten des gleichen Hosts. Ein Klick auf den Namen des Hosts bringt Sie beispielsweise zur Ansicht Status of host.

views services of host

Auswirkung in Menüleiste

In globalen Host-Ansichten gibt es zudem den Punkt Hosts sowie in globalen Service-Ansichten Services — beachten Sie hier den Plural! Darüber können Sie zum Beispiel die Verfügbarkeit aller Hosts oder Services der aktuellen Ansicht aufrufen.

views menu global

Ansichten eines einzelnen Hosts hingegen, haben die Menüpunkte Host und Services mit allen Aktionen für den aktuellen Host beziehungsweise für all die Services der aktuellen Ansicht.

views menu context host

Ansichten eines einzelnen Services wiederum haben ebenfalls den Eintrag Host, dazu aber nun im Singular Service, mit Aktionen für diesen einen Service.

views menu context service

2. Ansichten verwenden

2.1. Optionen, Filter und Kommandos

Jede Ansicht bietet diverse Optionen, über die Sie diese beeinflussen und Aktionen auslösen können.

MenüpunktFunktion

Commands

Hier können Sie Kommandos auf den gezeigten Objekten ausführen (z.B. Eintragen von Wartungszeiten). Die Kommandos sind detailliert in einem eigenen Artikel beschrieben.

Display > Filter

Öffnet den Dialog mit den Filtern. Damit können Sie die gezeigten Daten weiter einschränken. Sobald Sie einen Filter gesetzt haben, ändert sich das Symbol auf button filters set lo, damit klar ist, dass unter Umständen nicht alle Daten angezeigt werden. Umgekehrt haben manche Views schon Filter vorbelegt (z.B. die Liste aller Probleme). Hier können Sie durch Entfernen der Filter wiederum mehr Daten anzeigen lassen. Änderungen der Filter werden nicht gespeichert, sondern wieder zurückgesetzt, sobald Sie die Ansicht verlassen.

Display > Show checkboxes

Damit schalten Sie Checkboxen ein oder aus. Mit den Checkboxen können Sie die Kommandos auf ausgewählte Datensätze einschränken.

Display > Modify display options > Number of columns

Legt die Anzahl der Spalten für die gewählte Ansicht fest. Mehrspaltige Ansichten helfen, auf breiten Monitoren den verfügbaren Platz auszunutzen. Bei Ansichten, die nur einen Datensatz anzeigen, ist diese Einstellung wirkungslos.

Display > Modify display options > Refresh interval

Legt fest, in welchem Intervall die Ansicht neu geladen wird. Sie können damit das automatische Neuladen auch ganz abschalten. Bitte beachten Sie, dass es in diesem Fall sein kann, dass Sie über ein inzwischen aufgetretenes Problem nicht informiert werden!

Display > Modify display options > Date format

Änderung des Formats für die Datumsanzeige.

Display > Modify display options > Time stamp format

Zeitstempel können absolut, relativ, gemixt, gemeinsam oder als Unix Timestamp angezeigt werden.

2.2. Zeit- und Datumsangaben

Checkmk zeigt in seinen Statusansichten alle Zeitangaben, die weniger als 24 Stunden in der Vergangenheit oder Zukunft liegen, als relative Angaben  — also z.B. 16 hrs. Sie können das im Menü über Display > Modify display options umschalten und wahlweise nur absolute, nur relative oder beide Werte anzeigen lassen, oder auch den Unix-Timestamp. Auch das Datumsformat können Sie in diesem Dialog festlegen.

views time date

2.3. Sortierung

Die tabellarischen Ansichten können Sie durch ein Klicken auf die Spaltenüberschriften sortieren. Dabei gibt es drei Zustände einer Spalte, die durch mehrfaches Klicken im Kreis herum der Reihe nach ausgewählt werden:

  • Aufsteigend sortieren

  • Absteigend sortieren

  • Nicht mehr nach dieser Spalte sortieren

Zunächst wird eine Ansicht immer auf eine natürliche Art sortiert, die in der Ansicht selbst festgelegt ist. Bei den Servicelisten ist die Sortierung immer alphabetisch nach dem Namen des Services  —  mit der Ausnahme, dass die Check_MK-Services immer oben stehen. Neben dem Service Check_MK, der für die Abfrage des Monitoring-Agenten zuständig ist, sind das noch Check_MK Discovery, Check_MK HW/SW Inventory und gegebenenfalls Check_MK Agent. Um eine solche Liste nach dem aktuellen Status der Services zu sortieren genügt ein Klick auf State.

views sort by state

Die Sortierung nach der Spalte Perf-O-Meter führt manchmal zu überraschenden Ergebnissen. Das liegt daran, dass die grafische Darstellung der Messwerte teilweise eine prozentuale Zusammenfassung der eigentlichen Werte zeigt. Die Sortierung geschieht aber nach den absoluten Werten  — und zwar immer nach der ersten Metrik, die ein Service ausgibt.

2.4. Export

Sie können die in einer Ansicht gezeigten Daten in verschiedenen Formaten über das Menü Export exportieren:

MenüpunktAktion

Data > Export CSV

Als Trennzeichen wird ein Semikolon verwendet. Die einzelnen Zellen sind in Anführungszeichen eingeschlossen. In der ersten Zeile sind die internen Kürzel für die einzelnen Spalten eingetragen.

Data > Export JSON

Beim JSON-Export landen die Zellen ebenfalls in Anführungszeichen, getrennt durch Umbrüche und Kommata, umschlossen von eckigen Klammern.

Reports > This view as PDF

Nur Enterprise Editions: Hierbei wird ein sogenannter Instant-Report erzeugt, der die aktuelle Tabellenansicht in ein PDF-Dokument überführt, abzüglich Icons, Navigation und so weiter. Das Aussehen können Sie über spezielle Schablonen im Berichtsmodul anpassen.

Reports > Diverse

Je nach aktueller Tabellenansicht werden hier weitere PDF-Exporte angeboten, etwa zur Verfügbarkeit, sowie gegebenenfalls individuell erstellte Report-Vorlagen.

REST API > Query host/service resource

Ausgabe der REST-API zur Host-/Service-Auswahl der aktuellen (gefilterten) Tabellenansicht.

2.5. Das Anzeigelimit

Bei einer größeren Monitoring-Umgebung sind nicht mehr alle Ansichten sinnvoll. Wenn Sie 50.000 Services überwachen und die Ansicht All Services anwählen, würde die Darstellung nicht nur sehr lange brauchen  —  sie wäre auch wenig nützlich.

Um den Benutzer in solchen Situationen vor langen Wartezeiten zu schützen und das System nicht durch absurde Datenmengen in die Knie zu zwingen, sind Ansichten auf die Anzeige von 1000 Einträgen begrenzt. Bei einer Überschreitung erhalten Sie folgenden Hinweis:

views limit1

Wie Sie sehen, werden Sie darauf hingewiesen, dass die gezeigten Datensätze nicht unbedingt die ersten 1000 gemäß der gewählten Sortierung sind! Das hat einen technischen Hintergrund: Die Limitierung wird nämlich bereits an der Quelle der Daten durchgesetzt: in den Monitoring-Kernen der angebundenen Instanzen. Das ist sehr wichtig: Denn wenn wir erst eine Million Datensätze aus Ihrer weltweit verteilten Umgebung zusammensammeln würden, um gleich danach 99,9% der Daten wieder wegzuwerfen, dann wäre das Kind ja schon in den Brunnen gefallen. Die Sortierung übernimmt erst am Ende die Oberfläche  —  es geschieht also nach der Limitierung. Denn die Daten von allen Instanzen müssen ja gemeinsam sortiert werden.

Sofern Sie wirklich der Meinung sind, mehr als 1000 Datensätze sehen zu wollen, können Sie durch einen Klick auf Repeat query and allow more results ins nächste Level kommen. Hier greift eine Begrenzung auf 5000 Datensätze. Ist diese wieder überschritten, so können Sie ganz ohne Limit fortfahren. Da dies eine gefährliche Operation sein kann, benötigt sie Administratorrechte. Sie wurden gewarnt!

views limit2

Sie können die beiden Stufen unter Global Settings > User Interface anpassen:

views limit3

3. Ansichten anpassen

3.1. Grundsätzliches

Checkmk erlaubt Ihnen, die mitgelieferten Ansichten anzupassen und sogar ganz Neue zu erzeugen, welche Sie dann auch in Berichte und Dashboards einbauen können. Dabei können Sie bei jeder Ansicht eine Menge verschiedener Aspekte bestimmen:

  • Allgemeine Dinge wie Titel, Thema, usw.

  • Welche Datenquelle wird dargestellt (z.B., Hosts, Services, Events der Event Console etc.)?

  • Welche Auswahl an Datensätzen wird dargestellt (Filterung)?

  • Welche Spalten werden dargestellt?

  • Zu welchen anderen Ansichten verlinken die Texte in den Spalten?

  • Wie wird standardmäßig sortiert?

  • Gibt es eine Gruppierung, und falls ja, wie sieht diese aus?

  • Wo und für welche Benutzer soll die Ansicht sichtbar sein?

  • Welche Art von Tabellenlayout soll verwendet werden?

Den Editiermodus für Views erreichen Sie auf zwei Arten:

  1. Bei einer bestehenden View über den Menüeintrag Display > Customize view — womit ein Klon der View angelegt wird.

  2. Im Menü Customize > Visualization > Views. Dort können Sie mit button add view ganz neue Ansichten erzeugen oder wiederum mit icon clone bestehende klonen und anpassen:

views edit views

3.2. Erst klonen, dann verändern

Da die mitgelieferten Ansichten Teil der Software sind und somit nicht verändert werden können, kennt Checkmk das Konzept vom Klonen. Beim ersten Anpassen einer View wird automatisch eine Kopie der Ansicht für Sie erzeugt. Diese Kopie ist dabei Ihrem Benutzerprofil zugeordnet.

Die Kopie können Sie dann so anpassen, wie Sie es möchten. Die ursprüngliche Ansicht bleibt erhalten, wird aber verschattet  —  also durch Ihre Kopie verdeckt. Sie können später einfach zur Standardansicht zurückkehren, indem Sie Ihren Klon löschen (das geht dann in Tabelle der Views wie erwartet mit icon delete).

Dieses Konzept hat noch einen weiteren Vorteil: Sie können nämlich bestimmen, ob die Ansicht für alle Benutzer geändert sein soll, oder nur für Sie selbst. Dies legen Sie in den General Properties der Ansicht unter Visibility mit der Checkbox Make this view available for other users fest. Es überrascht wohl nicht, dass Sie diese Checkbox nur dann setzen können, wenn Sie Administratorrechte haben (genau genommen gibt es dafür eine eigene Berechtigung mit dem Namen Publish views). Zusätzlich können einzelne Ansichten in den Rollendefinitionen gesperrt werden.

Was ist nun, wenn eine Ansicht von mehreren Benutzern angepasst und freigegeben wurde? Jeder der Benutzer hat dann nämlich eine eigene Variante der View. Welche davon wird für wen sichtbar? Dies wird durch folgende Regeln bestimmt:

  1. Wenn ein Benutzer für sich selbst eine Ansicht erzeugt hat, hat diese für ihn immer Vorrang.

  2. Danach gelten Ansichten, die ein Adminbenutzer angepasst und freigegeben hat (genau gesagt jemand mit dem Recht Modify builtin views).

  3. Gibt es hier keine, so gelten Ansichten, die ein anderer normaler Benutzer mit dem Recht Publish views freigegeben hat.

  4. Und wenn es hier auch keine gibt, dann wird die ausgelieferte Variante sichtbar.

Wie können Sie nun aber eine echte Kopie einer Ansicht erstellen, also am Ende beide Ansichten sehen  —  die mitgelieferte und Ihre Version? Dies wird über die Unique ID in den General Properties gesteuert. Ändern Sie einfach die ID Ihrer View auf einen anderen Wert. Damit gilt die View nicht mehr als Klon der mitgelieferten View sondern beginnt ein eigenes Leben.

Die ID ist übrigens auch die entscheidende Angabe in der URL, über die Views aufgerufen werden. Das Schema ist ganz einfach. So wird z.B. die globale View mit der ID allhosts wie folgt aufgerufen:

/mysite/check_mk/view.py?view_name=allhosts

Das Konzept mit dem Klonen und Anpassen und der Sichtbarkeit finden Sie übrigens auch an vielen anderen Stellen von Checkmk, nämlich bei:

3.3. Integration einer View in die Navigation

Wie und ob eine View im Monitor-Menü der Navigationsleiste sowie dem Seitenleistenelement Views angezeigt wird, legen folgende Eigenschaften unter General Properties fest:

views edit view general properties
  • Title: Dies wird der Name des Eintrags.

  • Topic in 'Monitor menu': Unter diesem Thema wird die View einsortiert. Sie können auch eigene Themen definieren.

  • Sort index: Entscheidet, wie weit oben die Ansicht im Menü erscheint.

  • Visibility: Damit können Sie den Eintrag unterdrücken und/oder für andere Benutzer freigeben.

3.4. Grundlegendes Layout

Der nächste Kasten View Properties bestimmt das generelle Aussehen der View:

views edit view view properties

Die Einstellung Number of Columns bestimmt die Anzahl der Spalten, Automatic page reload das Aktualisierungsintervall — beide Werte können in der View selbst Display > Modify display options noch verändert werden.

Unter Basic Layout gibt es verschiedene Arten, wie die Daten in Tabellen dargestellt werden. Die meisten Ansichten verwenden Table  —  eine normale Tabelle, die nach Spalten sortierbar ist  —  oder Single dataset  — welches die Legende links hat und meist für einzelne Datensätze verwendet wird. Sie können Single dataset aber auch für Ansichten mit mehr als einem Objekt verwenden. Die Ansicht All hosts sieht nach einer Umstellung auf Single dataset etwa so aus:

views layout single dataset

3.5. Spalten und Gruppierung

Der Kasten Columns legt fest, welche Spalten Sie sehen. Die mögliche Auswahl von Spalten hängt von der gewählten Datenquelle ab. Am meisten Spalten finden Sie bei den Services, denn hier sind natürlich auch alle Informationen über den jeweiligen Host verfügbar. Die Liste kann hier schon recht lang werden und wenn Sie nicht sicher sind, welche Spalte die richtige ist, hilft nur eines: Ausprobieren.

views edit view columns

Je nach gewählter Spalte kann es dafür spezifische Optionen geben. Mit der Spalte Hosts: Hostname ist es zum Beispiel möglich, den Hostnamen über die Option Coloring entsprechend seines Status farblich zu hinterlegen.

Das Feld Link bietet eine Auswahl von allen Ansichten und Dashboards. Ist hier eine Ansicht ausgewählt, dann ist die jeweilige Zelle dieser Spalte anklickbar und bringt den Benutzer zur gewählten Ansicht. Wirklich sinnvoll ist das natürlich nur, wenn die Zielansicht einen Kontext hat. Bestes Beispiel ist die Ansicht All hosts. Die Spalte Hostname ist hier anklickbar und bringt den Benutzer dann zu Services of host  — von diesem Host. Alternativ können hier auch Dashboards angegeben werden, die freilich keinen Kontext benötigen.

Unter Tooltip werden Sie wiederum die Liste aller Spalten finden. So können Sie eine weitere Information zu dem Host oder Service einblenden, sobald der Benutzer mit der Maus über die jeweilige Zelle fährt (wie hier im Beispiel die IP-Adresse).

views hover address

3.6. Information über Services in einer Host-Ansicht

Stellen Sie sich vor, Sie möchten gerne Informationen zu bestimmten Services in einer Tabelle von Hosts anzeigen. Das folgende Beispiel zeigt ein sehr schönes Beispiel für so etwas: Zu jedem Host werden die aktuelle Uptime, die CPU-Last, die Speichernutzung und die NTP-Synchronisation ausgegeben:

views joined columns example

Hier wurde eine Tabelle von Hosts erstellt, in der für jeden Host die Servicespalte Perf-O-Meter von je vier verschiedenen Services angezeigt wird. Man sieht auch, dass bei einem der drei Hosts die Services CPU und Memory nicht existieren und die Spalten dort konsequenterweise leer ist.

Die Konfiguration dieser Ansicht geschah über das Hinzufügen von Spalten vom Typ Joined column. Hier erscheinen dann unter Column: die Spalten für Services und es wurde Perf-O-Meter ausgewählt. Der Eintrag Title bestimmt dann die Überschrift der Spalte. Unter Of Service ist der exakte Name des Services eingetragen (Groß-/Kleinschreibung beachten!):

views edit view columns 2

So eine Darstellung ist natürlich nur dann nützlich, wenn die Ansicht eine Liste von ähnlichen Hosts anzeigt, welche auch alle über die gewählten Services verfügen. Das ist auch der Grund, warum Checkmk keine derartigen Ansichten mit ausliefert: Welche Spalten hier sinnvoll sind, hängt absolut von der Art der gewählten Hosts ab. Bei Linux-Servern interessieren sicherlich völlig andere Informationen als z.B. bei USVs.

3.7. Sortierung

Die Sortierung einer Ansicht konfigurieren Sie im vierten Kasten. Es handelt sich dabei nur um die voreingestellte Sortierung: Der Benutzer kann wie oben beschrieben über einen Klick auf die Spaltentitel die Sortierung für sich anpassen. In der Konfiguration der View haben Sie aber mehr Möglichkeiten: Sie können eine mehrstufige Sortierung einstellen, z.B. zuerst nach dem Service-Status, und bei gleichem Status nach dem Namen des Services. Die so eingestellte Reihenfolge bleibt auch als nachrangige Sortierung erhalten, wenn der Benutzer nach einer bestimmten Spalte umsortiert.

views edit view sorting

3.8. Gruppierung

Durch Gruppierung zerteilen Sie eine Tabelle in mehrere Abschnitte  —  wobei jeder Abschnitt Daten anzeigt, die irgendwie zusammengehören. Ein gutes Beispiel ist die Ansicht Service problems, welche Sie bequem über das Snapin Overview erreichen.

Hier sehen Sie diese Tabelle gruppiert nach dem Service-Status (State): zuerst alle CRIT, dann UNKNOWN, dann WARN - jeweils mit einem eigenen Gruppentitel:

views edit view grouping

Die Gruppierung in einer View konfigurieren Sie analog zu den Spalten. Legen Sie einfach fest, nach welchen Spalten gruppiert werden soll. Meist ist das nur eine einzige, aber es können auch mehrere sein. Alle Datensätze mit dem gleichen Wert für alle gewählten Spalten werden dann in einer Gruppe angezeigt. Und die Spalteninformation wird jeweils als Gruppentitel anzeigt.

Es ist wichtig, dass Sie die Datensätze auch vorrangig nach der gewählten Gruppeneigenschaft sortieren! Andernfalls kann es sein, dass die gleiche Gruppe mehrfach auftaucht (in Einzelfällen kann dies sogar gewünscht sein). Übrigens: Ein Umsortieren nach einer Spalte durch den Benutzer hat keinen Einfluss auf die Gruppierung: In diesem Fall wird nur die Reihenfolge der Gruppen bestimmt und die Datensätze werden innerhalb der Gruppen sortiert. Die Gruppen selbst bleiben erhalten.

3.9. Filter, Kontext und Suche

Ein wichtiger Aspekt von Views ist die Selektion der Daten. Welche Hosts oder Services sollen in der Tabelle angezeigt werden? Checkmk verwendet hierfür das Konzept der Filter. Hier sind ein paar Beispiele für Host-Filter:

views filter

Jeder Filter kann vom Benutzer mit Suchbegriffen oder anderen Kriterien gefüllt werden und reduziert dann die Liste der Ergebnisse auf diejenigen Datensätze, die die Kriterien erfüllen. Die Filter werden dabei UND-verknüpft. Die Filterkriterien, die bei einer View dann tatsächlich zum Einsatz kommen, werden aus drei Quellen zusammengestellt:

  1. Filter, die direkt in der View hinterlegt und mit Kriterien gefüllt sind

  2. Filter, die der Benutzer interaktiv in der View mit icon filter gesetzt hat

  3. Filter, die per Variablen über die URL gesetzt werden

Die Filter, die Sie beim Editieren einer View im Kasten Context / Search filters zusammenstellen, haben dabei zwei Funktionen. Zum einen legen Sie so fest, welche Filter dem Benutzer beim Klick auf icon filter angeboten werden. Zum anderen können Sie Filter bereits mit Kriterien vorbelegen und so die in der View gezeigten Daten einschränken (Punkt 1 von oben).

Falls Sie eine View mit Kontext anlegen oder editieren, so tritt anstelle der Filter des entsprechenden Objekts nur ein optionales Eingabefeld. In diesem gilt dann immer ein exakter Vergleich (Groß-/Kleinschreibung beachten). Nehmen wir als Beispiel die View host, welche alle Services eines bestimmten Hosts anzeigt. Der Hostname wird der View über einen Kontext mit auf den Weg gegeben. Sie können sich aber eine Ansicht bauen, welche den gezeigten Host quasi hart kodiert direkt in der View festlegt:

views edit view context filter

Damit können Sie diese View wieder ohne Kontext aufrufen und auf Wunsch auch problemlos in das Seitenleistenelement Views einbinden.

3.10. Spezielle Such-Ansichten

Die mitgelieferten Ansichten Host search und Service search (und auch andere) verhalten sich im Bezug auf die Filter auf eine spezielle Art: Wenn Sie so eine Ansicht anwählen, so startet diese mit einem geöffnetem Filter-Formular und zeigt erst dann Hosts oder Services an, wenn dieses abgeschickt wurde.

Warum? Es wäre einfach sehr unpraktisch, wenn Sie erst auf All services gehen müssten  —  dann warten bis viele tausend Services dargestellt würden  — und erst dann durch eine Sucheingabe das Ergebnis filtern könnten. Dieses Verhalten legt die Option Show data only on search fest:

views edit view view properties show data

4. Neue Ansichten erstellen

Das Erzeugen einer neuen View mit button add view geht im Prinzip genauso wie das Editieren einer bestehenden View  —  mit einem kleinen Unterschied: Sie müssen vorher noch eine Datenquelle und einen spezifischen Objekttyp auswählen.

4.1. Datenquelle

views create view 1

Die Datenquelle ist das, was man in Datenbanken vielleicht als Tabelle oder Datenbank-View bezeichnen würde. Checkmk verwendet zwar keine SQL-Datenbank, ist intern aber ähnlich aufgebaut. In den meisten Fällen liegen Sie mit All services oder All hosts richtig. Es gibt aber einige spezielle Datenquellen, die hier kurz aufgelistet werden sollen:

DatenquelleBedeutung

Host- und Service-Gruppen

siehe unten

Alert Statistics

Statusstatistiken

BI, diverse

Business Intelligence

Event Console, Host- und Service-Events

Event Console

Inventory, diverse

Inventory

The Logfile

Livestatus-Daten

Host- und Service-Gruppen

Die Datenquellen Hostgroups und Servicegroups liefern je Zeile die Informationen über die Gruppe selbst — Filter für einzelne Hosts oder Services gibt es entsprechend nicht. Ein Beispiel für diese Datenquelle ist die Standardansicht Host groups. In verteilten Umgebungen erledigen die Datenquellen Hostgroups, merged und Servicegroups, merged genau das Gleiche.

views hostgroups summary

Wenn Sie hingegen Informationen zu einzelnen Hosts wünschen, lediglich gruppiert nach Host-Gruppen, können Sie etwa die Standardansicht All hosts in den Einstellungen im Bereich Grouping um die Gruppierungsoption Hosts: Host groups the host is member of ergänzen. Da Hosts mehreren Gruppen zugeordnet sein können, finden Sie in der Ansicht dann einen einzelnen Bereich für jede Host-Gruppenkombination, die für mindestens einen Host gilt.

views hostgroups

Auf dieselbe Weise können Sie auch mit Services und Service-Gruppen verfahren.

Je nach ausgewählter Datenquelle stehen Ihnen unterschiedliche Spalten zum Aufbau der Ansicht zur Verfügung.

4.2. Objekttyp: Global oder mit Kontext

views create view 2

Hier entscheidet sich, ob Ihre neue View einen Kontext haben oder ob es eine globale Ansicht werden soll. Welche Auswahlmöglichkeiten Sie haben, hängt von der gewählten Datenquelle ab. Der mit Abstand häufigste Kontext ist Host. Die Abbildung von oben erscheint nach der Auswahl der Datenquelle All services.

Durch das Aktivieren von Show information of a single host legen Sie fest, dass die neue Ansicht genau einen Host beschreibt. So haben Sie die Grundlage dafür geschaffen, dass die Ansicht nicht global, sondern verlinkt sichtbar wird:

  • Bei einer Host-Ansicht mit einem Kontext

  • Als Verknüpfung in einer Spalte (siehe oben, z.B. Klick auf Hostname in einer Ansicht)

Bei dem Kontexttyp Service gibt es zwei Möglichkeiten: Wenn Sie nur Show information of a single service anwählen, können Sie eine Ansicht bauen, die alle Services mit dem gleichen Namen aber auf verschiedenen Hosts anzeigt. Wenn es um einen ganz.B.stimmten Service von einem einzigen Host gehen sollen, dann kreuzen Sie zusätzlich Show information of a single host an.

5. Die Matrix

Wenn Sie in den View Properties als Basic Layout bei einer Ihrer Ansichten Matrix einstellen, werden Sie wahrscheinlich erstmal seltsame Dinge erleben und sich fragen, was das Ganze soll. Die Matrix ist sicher nicht auf den ersten Blick einleuchtend, aber Sie können damit tolle Dinge machen.

In den ausgelieferten Views gibt es eine, die dieses Layout verwendet  — und zwar Search performance data. Sie finden diese View über Customize > Visualization > Views.

Folgende Abbildung zeigt eine Suche nach dem Serviceausdruck CPU|^memory|Filesystem /opt/omd/sites/mysite:

views matrix filter service

Das Ergebnis ist eine hübsche Tabelle der Hosts, in denen die Metriken all dieser Services gegenübergestellt sind. Nicht alle Hosts haben die gleichen Services, so dass bei einigen Hosts dann die entsprechenden Zellen einfach leer bleiben:

views matrix view 1

Das Ganze sieht jetzt erstmal sehr ähnlich aus wie die weiter oben beschriebene Information über Services in einer Host-Ansicht. Es gibt aber ein paar wesentliche Unterschiede:

  1. Die Liste der Services ist dynamisch und nicht fest konfiguriert.

  2. Die Hosts sind hier die Spalten  —  nicht die Zeilen.

  3. Sie können mit der Matrix noch viel mehr anstellen.

Wenn Sie in die Definition der View gucken, können Sie sehen, wie diese konstruiert ist:

  • Als Basic Layout ist Matrix eingetragen.

  • Bei Grouping ist als einzige Spalte der Hostname eingetragen.

  • Bei Columns sind die Service description und das Service Perf-O-Meter eingetragen.

Die Regel für das Matrix-Layout ist so:

  • Die Grouping Columns werden als Köpfe für die Spalten verwendet.

  • Die erste normale Column bildet die linke Spalte mit der Beschriftung der Zeilen.

  • Alle weiteren normalen Columns werden in den Zellen angezeigt.

Wenn Sie z.B. mehr Informationen über den Host anzeigen möchten, fügen Sie einfach weitere Spalten im Bereich Grouping hinzu. So sieht z.B. die Tabelle von oben aus, wenn Sie die Spalten Host icons und WATO folder - just folder name hinzufügen:

views matrix view 2

Weitere normale Spalten landen dann direkt in den Zellen. Folgendes Beispiel (gekürzt) zeigt die Matrix mit der zusätzlichen Spalte Output of check plugin:

views matrix view 3

5.1. Erkennen von Ausreißern

Warum sind eigentlich manche Zellen farbig hinterlegt? Nun — hier werden Sie hingewiesen auf Werte, die sich abheben von der Mehrheit. Das ist wohl bei Messdaten nicht so sinnvoll. Aber es gibt Anwender, die mit einer speziell konstruierten Matrixansicht auf einen Blick feststellen können, ob z.B. bei gewissen Hosts oder Services eine falsche Kontaktgruppe eingetragen ist!

views matrix view 4

6. Alarmtöne

Eine Ansicht kann über den Browser Alarmtöne (alarm sounds) abspielen, wenn sich in der Tabelle mindestens ein Problem befindet (also ein Host der nicht UP oder ein Service der nicht OK ist). Diese primitive Art der Alarmierung ist z.B. interessant für Leitstände, wo die Liste der Probleme ständig auf einem Schirm sichtbar ist, aber der Operator nicht ständig auf diesen starren möchte.

Die Alarmtöne sind per Default ausgeschaltet. Über den globalen Schalter Setup > General > Global settings > User interface > Enable sounds in views können Sie diese einschalten. Wie immer hilft hier die Suche im Setup-Menü:

global settings enable sound

Alarmtöne werden aber nicht in allen Views abgespielt, sondern nur, wo dies in den View Properties aktiviert ist:

view properties sounds

7. Views in fremde Webseiten einbetten

Da jede Ansicht über eine URL erreichbar ist, können Sie diese auch in andere Webseiten einbetten  —  z.B. über einen <iframe>. Etliche Elemente der View ergeben allerdings in so einem Kontext keinen Sinn oder sind sogar störend. In so einem Fall können Sie an die URL die Variable display_options=…​ anhängen, über die Sie genau steuern können, welche Bestandteile der View im HTML-Code nicht generiert werden sollen.

Wichtig: Auch die Navigation von Checkmk ist beim Einbetten meist eher unerwünscht. Bevor Sie also in einer View manuell Optionen setzen, lassen Sie die Seite über Display > This page without navigation ohne Navigation und Seitenleiste anzeigen.

Jeder Bestandteil wird durch einen Buchstaben kodiert und kann entsprechend ausgeschlossen werden.

Folgende Buchstaben sind definiert:

OptionWirkung

t

Titelzeile (mit Seitentitel, Breadcrumb-Pfad, Symbol zum Countdown der Seitenaktualisierung), Menüleiste und Aktionsleiste werden entfernt.

b

Menüpunkte und Aktionsknöpfe werden entfernt, die zu anderen Ansichten verlinken.

f

Menüpunkt Display > Filter und der zugehörige Aktionsknopf zum Öffnen der view button filters Filterleiste werden entfernt.

c

Menü Commands und zugehörige Aktionsknöpfe werden entfernt.

o

Die Optionen Number of columns und Refresh interval werden entfernt, sonst einblendbar mit Display > Modify display options.

d

Menüpunkt Display > Modify display options wird entfernt.

e

Menüpunkt Display > Customize View wird entfernt.

r

Symbol zum Countdown der Seitenaktualisierung in der Titelzeile und der Javascript-Code für die automatische Aktualisierung werden entfernt.

s

Abspielen von Alarmtönen bei den Service-Zuständen WARN und CRIT.

i

Links auf andere Ansichten werden entfernt, z.B. in einer Service-Liste die Links in der Spalte Service.

m

Das Ziel von Links ist standardmäßig der HTML-Frame main — mit dieser Option werden Links in neuen Tabs geöffnet.

l

Links in Spaltentiteln werden entfernt.

w

Limitierung und Livestatus-Fehlermeldungen.

Wenn Sie also die z.B. alle Bedienelemente, Knöpfe und Links abschalten und nur die eigentliche Tabelle darstellen möchten, so sieht ein Link auf die View allhosts so aus:

/myserver/mysite/check_mk/view.py?view_name=allhosts&display_options=til

8. Eigene Icons und Aktionen einfügen

In Ansichten von Hosts und Services sehen Sie auch eine Spalte für Icons und darin das icon menu Action menu, aus dem Sie Host- beziehungsweise Service-Aktionen auswählen können. Sie dürfen Ansichten aber auch um eigene Icons erweitern. Diese können wahlweise schlicht zur Visualisierung genutzt oder mit eigenen Aktionen belegt werden.

So ließen sich zum Beispiel Hosts, die über eine grafische Web-Oberfläche verfügen, über solch ein individuelles Icon schnell identifizieren und über einen Link auch direkt ansteuern.

Das Prozedere für eigene Icons und Aktionen gliedert sich in drei Schritte:

  1. Icons hochladen

  2. Icons/Actions definieren

  3. Icons Hosts/Services zuordnen

Starten Sie über Setup > General > Custom Icons und laden Sie eine lokale Datei mit einer maximalen Größe von 80x80 Pixeln hoch. Damit ist das Icon im System, findet aber noch keinerlei Verwendung.

views manage icons upload

Nun müssen Sie das Icon noch als über Regeln ansprechbares Objekt und optional eine zugehörige Aktion definieren. Die Einstellungen finden Sie unter Setup > General > Global settings > User Interface > Custom icons and actions. Erstellen Sie hier über Add new element einen neuen Eintrag und legen Sie ID, Icon und einen Title fest; der Titel wird übrigens später per On-Mouse-Over-Effekt als Tooltip direkt am Icon angezeigt und ist für die Nutzer damit sehr nützlich.

views global settings custom icons and actions

Interessant wird es nun beim Punkt Action: Aktion ist hier gleichzusetzen mit einer URL und für diese dürfen Sie einige Variablen wie $HOSTNAME$ oder $SERVICEDESC$ (Service-Beschreibung) nutzen — weitere Hinweise bekommen Sie über die Online-Hilfe. Eine gültige Aktion wäre beispielsweise:

view.py?host=$HOSTNAME$&site=mysite&view_name=host

Diese Aktion ruft schlicht die Standard-Host-Ansicht für den jeweiligen Host auf der Seite mysite auf.

Über ein Häkchen bei Show in column können Sie das Icon dann als eigenständiges Bildchen neben icon menu anzeigen lassen, andernfalls landet Ihre Aktion im zugehörigen Aktionsmenü.

Im letzten Schritt bestimmen Sie nun, bei welchen Hosts oder Services das neue Icon angezeigt werden soll — und das natürlich über Regeln. Sie finden die beiden Regeln Custom icons or actions for hosts in status GUI und Custom icons or actions for services in status GUI im Setup-Menü unter Host monitoring rules und Service monitoring rules. Am schnellsten finden Sie die beiden Regeln mit der Suche im Setup-Menü.

Legen Sie eine neue Regel im gewünschten Ordner an und setzen Sie darin mindestens zwei Optionen: Zum einen wählen Sie unter Custom icons or actions for hosts in status GUI das just angelegte Icon:

views custom icons or actions

Zum anderen filtern Sie im Conditions-Bereich wie üblich auf die gewünschten Hosts/Services:

views custom icons or actions b

Speichern und bestätigen Sie anschließend die Änderungen.

In Host- und Service-Ansichten sehen Sie ab sofort bei den gefilterten Hosts und Services Ihr neues Icon neben oder im Aktionsmenü:

views view with custom icon
Auf dieser Seite