Praxisbeispiel
Übersicht
Dieser Abschnitt zeigt ein schrittweises, praxisnahes Beispiel dafür, wie Web-Monitoring verwendet werden kann.
Das Zabbix Web-Monitoring wird verwendet, um das Zabbix Frontend zu überwachen. Das Ziel ist festzustellen, ob es verfügbar ist, den richtigen Inhalt bereitstellt und wie schnell es arbeitet. Um dies zu erreichen, sind mehrere Schritte erforderlich, darunter das Prüfen der Verfügbarkeit der ersten Seite, das Anmelden mit Benutzername und Passwort, das Verifizieren des erfolgreichen Anmeldens, das Abmelden und das Bestätigen der Abmeldung.
Szenario
Ein neues web scenario hinzufügen
- Gehen Sie zu Data collection > Hosts.
- Wählen Sie einen Host aus und klicken Sie in der Zeile dieses Hosts auf Web.
- Klicken Sie auf Create web scenario.

-
Füllen Sie im Formular für das neue scenario auf der Registerkarte Scenario die folgenden Felder aus:
- Name: Frontend check.
- Update interval: 1m.
- Attempts: 1.
- Agent: Zabbix.
Im Abschnitt Variables fügen Sie die folgenden Name-Wert-Paare hinzu: {user}: Ihre vorhandenen Zabbix-Benutzeranmeldedaten;{password}: Ihre vorhandenen Zabbix-Benutzeranmeldedaten.
Aus Sicherheitsgründen wird empfohlen, einen separaten Benutzer mit minimalen Berechtigungen zu erstellen, der für Überwachungszwecke verwendet wird.
Optional können Sie zur Registerkarte Tags wechseln und Tags für das web scenario hinzufügen.
Sie können Tags für web scenarios 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.
Webszenario-Schritte konfigurieren
Wechseln Sie zur Registerkarte Steps und definieren Sie die Schritte für das Szenario.
Nachdem Sie jeden Schritt konfiguriert haben, klicken Sie auf die Schaltfläche Add.
Beachten Sie, dass das Zabbix Frontend beim Anmelden eine JavaScript-Weiterleitung verwendet. Daher muss die Anmeldung zuerst erfolgen, und angemeldete Funktionen können erst in den weiteren Schritten überprüft werden. Außerdem muss der Anmeldeschritt die vollständige URL zur Datei index.php verwenden.
Gemeinsame Felder für alle Schritte
Zusätzlich zu den schrittspezifischen Feldern füllen Sie für jeden der unten beschriebenen Schritte die folgenden gemeinsamen Felder aus:
- URL: die URL des Zabbix Frontend (
http://<server_ip_or_name>/zabbix/index.php(für Apache) oderhttp://<server_ip_or_name>/index.php(für Nginx)). Für Web-Szenario Schritt 3 verwenden Sie eine andere URL, wie unten beschrieben. - Timeout: 15s.
- Erforderliche Statuscodes: 200.
Web-Szenario-Schritt 1
Prüfen Sie, dass die erste Seite korrekt antwortet, den HTTP-Statuscode 200 zurückgibt und den Text Zabbix SIA enthält.
Füllen Sie die folgenden Felder aus:
- Name: Erste Seite.
- Timeout: 15s.
- Required string: Zabbix SIA.
- Die gemeinsamen Felder für alle Schritte.

Web-Szenario-Schritt 2
Melden Sie sich im Zabbix-Frontend mit den im Tab Szenario definierten Makros (Variablen) an: {user} und {password}.
Füllen Sie die folgenden Felder aus:
- Name: Login.
- Im Abschnitt Post fields fügen Sie die folgenden Name-Wert-Paare hinzu:
- name:
{user}; - password:
{password}; - enter: Sign in.
- name:
- Die gemeinsamen Felder für alle Schritte.
Aktivieren Sie das Kontrollkästchen Follow redirects.

Web-Szenario Schritt 3
Nach der Anmeldung überprüfen Sie den Erfolg, indem Sie nach einer Zeichenfolge suchen, die nur im angemeldeten Zustand sichtbar ist, zum Beispiel Administration.
Füllen Sie die folgenden Felder aus:
- Name: Login check.
- URL: die URL, zu der der Benutzer nach der Anmeldung weitergeleitet wird (zum Beispiel http://127.0.0.1/zabbix/zabbix.php?action=dashboard.view).
- Im Abschnitt Variablen fügen Sie das Name-Wert-Paar
{csrf_token}:regex:([0-9a-z]{64})hinzu. Diese Variable erfasst den Wert des zugewiesenen CSRF-Tokens, um ihn im web scenario step 4 wiederzuverwenden. - Erforderliche Zeichenfolge: Administration.
- Die gemeinsamen Felder für alle Schritte.

Web-Szenario Schritt 4
Nachdem die Zugänglichkeit und die Anmeldung des Frontends überprüft wurden, fügen Sie einen Abmeldeschritt hinzu - andernfalls wird die Zabbix-Datenbank mit vielen offenen Sitzungsdatensätzen überfüllt.
Füllen Sie die folgenden Felder aus:
- Name: Logout.
- Fügen Sie im Abschnitt Post fields die folgenden Name-Wert-Paare hinzu:
- reconnect: 1;
- _csrf_token:
{csrf_token}.
- Die gemeinsamen Felder für alle Schritte.
Aktivieren Sie das Kontrollkästchen Follow redirects.
Dieser Schritt verwendet die Variable {csrf_token}, die in Web-Szenario Schritt 3 ermittelt wurde.

Web-Szenario Schritt 5
Um die Abmeldung zu bestätigen, prüfen Sie auf die Zeichenfolge Username.
Füllen Sie die folgenden Felder aus:
- Name: Logout-Prüfung.
- Erforderliche Zeichenfolge: Username.
- Die gemeinsamen Felder für alle Schritte.

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 fertige Webüberwachungsszenario.
Wenn das Webszenario erstellt wird, werden automatisch neue web monitoring items für die Überwachung hinzugefügt.
Das Szenario wird dem Host hinzugefügt. Um Informationen zum Webszenario anzuzeigen, gehen Sie zu Monitoring > Hosts, suchen Sie den Host in der Liste und klicken Sie in der letzten Spalte auf den Hyperlink Web.

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