2 Praxisbeispiel
Überblick
Dieser Abschnitt zeigt ein praxisnahes Schritt-für-Schritt-Beispiel dafür, wie Web-Monitoring eingesetzt werden kann.
Das Zabbix-Web-Monitoring wird verwendet, um das Zabbix Frontend zu überwachen. Ziel ist es festzustellen, ob es verfügbar ist, die richtigen Inhalte bereitstellt und wie schnell es arbeitet. Dazu sind mehrere Schritte erforderlich, darunter die Prüfung der Verfügbarkeit der ersten Seite, die Anmeldung mit Benutzername und Passwort, die Überprüfung des erfolgreichen Logins, das Abmelden und die Bestätigung der Abmeldung.
Szenario
Ein neues Web-Szenario hinzufügen
Gehen Sie zu Datenerfassung → Hosts, wählen Sie einen Host aus und klicken Sie in der Zeile dieses Hosts auf Web.
Klicken Sie dann auf Web-Szenario erstellen.

Füllen Sie im Formular für das neue Szenario die folgenden Felder aus:
- Name - Frontend-Prüfung
- Aktualisierungsintervall - 1m
- Versuche - 1
- Agent - Zabbix
Fügen Sie im Abschnitt Variablen zwei Variablen hinzu: {password} und {user}.
Geben Sie als Werte Ihre vorhandenen Zabbix-Benutzeranmeldedaten ein.
Aus Sicherheitsgründen wird empfohlen, für Überwachungszwecke einen separaten Benutzer mit minimalen Berechtigungen zu erstellen.
Optional können Sie zur Registerkarte Tags wechseln und Web-Szenario-Tags hinzufügen.
Nach der vollständigen Konfiguration fügt dieses Web-Szenario automatisch einen Zabbix-Trapper-Datenpunkt zum Host hinzu.
Sie können Web-Szenario-Tags verwenden, um zugehörige Datenpunkte und Auslöser schnell zu identifizieren oder die gesammelten Daten zu durchsuchen.
Geeignete Tags für dieses Tutorial sind beispielsweise component: web-scenario und/oder target: frontend.
Web-Szenario-Schritte konfigurieren
Wechseln Sie zur Registerkarte Steps und definieren Sie die Schritte für das Szenario. Klicken Sie auf die Schaltfläche Add, um einen einzelnen Schritt hinzuzufügen.
Allgemeine Felder
Füllen Sie für jeden unten beschriebenen Schritt zusätzlich zu den schrittspezifischen Feldern die folgenden Felder aus:
- URL - die URL des Zabbix Frontend
- Timeout - 15s
- Erforderliche Statuscodes - 200
Web-Szenario-Schritt 1
Prüfen Sie, dass die erste Seite korrekt antwortet, den HTTP-Antwortcode 200 zurückgibt und den Text "Zabbix SIA" enthält.
- Geben Sie im Feld Name First page ein.
- Geben Sie im Feld Required string Zabbix SIA ein.
- Füllen Sie die allgemeinen Felder aus.
Wenn Sie mit der Konfiguration des Schritts fertig sind, klicken Sie auf die Schaltfläche Add.

Webszenario-Schritt 2
Melden Sie sich im Zabbix Frontend mit den auf Szenarioebene definierten Makros (Variablen) an – {user} und {password}.
- Geben Sie im Feld Name Login ein.
- Fügen Sie im Abschnitt Post fields drei Post-Felder hinzu:
- name mit dem Wert {user}
- password mit dem Wert {password}
- enter mit dem Wert Sign in
- Fügen Sie im Abschnitt Variables eine neue Variable {csrf_token} mit dem Wert regex:([0-9a-z]{64}) hinzu. Diese Variable erfasst den Wert des zugewiesenen CSRF-Tokens, um ihn in Schritt 4 erneut zu verwenden.
- Füllen Sie die gemeinsamen Felder aus.

Beachten Sie, dass das Zabbix Frontend bei der Anmeldung eine JavaScript-Weiterleitung verwendet. Daher muss die Anmeldung zuerst erfolgen, und Funktionen für angemeldete Benutzer können erst in weiteren Schritten geprüft werden. Außerdem muss der Anmeldeschritt die vollständige URL zur Datei index.php verwenden.
Schritt 3 des Webszenarios
Überprüfen Sie nach der Anmeldung den Erfolg, indem Sie nach einer Zeichenfolge suchen, die nur sichtbar ist, wenn man angemeldet ist – zum Beispiel Administration.
- Geben Sie im Feld Name Login check ein.
- Geben Sie im Feld Required string Administration ein.
- Füllen Sie die allgemeinen Felder aus.

Webszenario-Schritt 4
Sobald die Erreichbarkeit und die Anmeldung des Frontends überprüft wurden, fügen Sie einen Abmeldeschritt hinzu – andernfalls wird die Zabbix-Datenbank mit vielen offenen Sitzungseinträgen überladen.
- Geben Sie im Feld Name Logout ein.
- Fügen Sie im Abschnitt Post fields zwei Post-Felder hinzu:
- reconnect mit dem Wert 1
- _csrf_token mit dem Wert {csrf_token}.
- Füllen Sie die gemeinsamen Felder aus.
Dieser Schritt verwendet die Variable {csrf_token}, die in Schritt 2 abgerufen wurde.

Webszenario-Schritt 5
Um die Abmeldung zu bestätigen, prüfen Sie auf die Zeichenfolge Username.
- Geben Sie im Feld Name Logout check ein.
- Geben Sie im Feld Required string Username ein.
- Füllen Sie die gemeinsamen Felder aus.

Vollständige Konfiguration von Schritten
Eine vollständige Konfiguration von Schritten eines Webszenarios sollte wie folgt aussehen:

Prüfen Sie die Ergebnisse
Speichern Sie das fertiggestellte Web-Monitoring-Szenario.
Das Szenario wird dem Host hinzugefügt. Um Informationen zum Web-Szenario anzuzeigen, gehen Sie zu Monitoring → Hosts, suchen Sie den Host in der Liste und klicken Sie in der letzten Spalte auf den Web-Hyperlink.

Klicken Sie auf den Namen des Szenarios, um detailliertere Statistiken anzuzeigen:
