Anleitung zum Einrichten des Datenbank-Monitorings
Eine Database-Prüfung verbindet sich nach Zeitplan mit einem Datenbankserver, bestätigt, dass die Verbindung gelingt, und kann optional eine Abfrage ausführen und deren Ergebnis bewerten. Nutzen Sie sie, wenn eine URL-basierte Prüfung nicht ausreicht, weil das, was überwacht werden muss, hinter der Anwendung sitzt statt davor: ein Verbindungspool, der sich füllt, ein geplanter Job, der eine Tabelle veralten lässt, oder eine Abfrage, die früher eine Zeile lieferte und jetzt keine mehr.
Bevor Sie beginnen
Database-Prüfungen laufen nicht wie eine Http- oder Ping-Prüfung über HostTrackers verteiltes öffentliches Monitoring-Netzwerk, dieses Formular hat also überhaupt keinen Abschnitt für Überwachungsstandorte. Stattdessen wählt sich jede Prüfung über HostTrackers eigene private Prüfinfrastruktur bei Ihrem Server ein, unter Verwendung zweier fester Quelladressen: 4.207.101.172 und 20.107.152.200 (Nordeuropa). Fügen Sie beide Adressen der Firewall oder Security Group Ihres Datenbankservers hinzu, bevor Sie den Monitor speichern, und stellen Sie sicher, dass der Server Verbindungen auf seinem Port aus dem öffentlichen Internet akzeptiert, oder zumindest von diesen beiden Adressen. Ist der Port nicht erreichbar, schlägt jede Prüfung mit einem Verbindungsfehler fehl, unabhängig davon, wie der Rest des Monitors konfiguriert ist.
Richten Sie das Monitoring-Konto selbst ein, bevor Sie beginnen: Legen Sie einen eigenen Datenbanknutzer für die Prüfung an, gewähren Sie ihm nur, was die Prüfung braucht (üblicherweise nur die Berechtigung zum Verbinden plus SELECT auf die Tabelle, die Ihre Abfrage betrifft), und verwenden Sie kein Anwendungs- oder Admin-Konto wieder. Falls die geplante Abfrage Daten ändert, geben Sie diesem Konto nur Schreibzugriff auf die konkret betroffene Tabelle, nicht weiter.
Zieldatenbank
Drei Felder bestimmen, womit sich die Prüfung verbindet, und stehen oberhalb der einklappbaren Abschnitte, da sie verpflichtend sind:
- Servertyp - eine Auswahlliste der unterstützten Anbieter: Microsoft SQL Server, Oracle, MySQL, PostgreSQL und Firebird.
- Server : Port - der Hostname oder die IP des Datenbankservers und sein Port. Beim Wechsel des Servertyps wird automatisch der übliche Standardport des jeweiligen Anbieters eingetragen (1433 für SQL Server, 1521 für Oracle, 3306 für MySQL, 5432 für PostgreSQL, 3050 für Firebird) - Sie müssen ihn nur überschreiben, wenn Ihr Server anderswo lauscht.
- Datenbank (bei Oracle stattdessen Service und Instanzname (SID)) - der Name der Datenbank, zu der verbunden wird. Bei Oracle können Sie den Servicenamen, die SID oder beides angeben, je nachdem, wie Ihr Listener konfiguriert ist.
Darunter erlaubt Ihnen ein optionales Feld Name, den Monitor für Alarme, Berichte und Widgets zu beschriften - nützlich, sobald Sie mehr als eine Database-Prüfung haben und sie auf einen Blick unterscheiden müssen.
Haupteinstellungen
Diese Gruppe enthält den Zeitplan und die beiden allgemeinen Schalter, die jeder Prüfungstyp teilt:
- Intervall - wie oft die Prüfung läuft, angeboten von 10 Minuten bis 24 Stunden (10, 15, 30, 45 Minuten, dann 1, 2, 4, 6, 12 und 24 Stunden), plus eine Cron-Zeitplan-Alternative für unregelmäßigere Zeiten. Database-Prüfungen bieten nicht die Intervalle unter 10 Minuten, die manche anderen Prüfungstypen haben.
- Tags - frei wählbare Beschriftungen zum Gruppieren und Filtern von Monitoren an anderer Stelle im Dashboard.
- Full Log - speichert jedes einzelne Prüfergebnis statt nur gruppierter Zusammenfassungen, nützlich, wenn Sie genaue Antwortzeiten oder Werte über die Zeit sehen müssen statt nur die Erreichbar/Nicht-erreichbar-Historie.
- Open Stats - macht die Statistik- und Protokollseite dieses Monitors teilbar, auch mit Personen, die nicht angemeldet sind.
Verbindung

Nachdem das Ziel oben bereits festgelegt ist, behandelt dieser Abschnitt, wie sich die Prüfung authentifiziert und wie sie mit einem fehlgeschlagenen Verbindungsversuch umgeht:
- DB-Benutzername und DB-Benutzerpasswort - die Zugangsdaten für das oben beschriebene Monitoring-Konto. Beide sind optional: Lassen Sie sie leer, wenn Ihre Datenbank eine Trusted- oder anonyme Verbindung von einer auf der Positivliste stehenden Adresse erlaubt, wie es manche internen Aufbauten tun.
- Das Panel selbst zeigt die beiden Quelladressen an, von denen Prüfungen ausgeführt werden (
4.207.101.172,20.107.152.200), mit dem Hinweis, sie in die Positivliste der Datenbank-Firewall aufzunehmen - dieselbe Anforderung, die unter "Bevor Sie beginnen" behandelt wird, hier wiederholt, weil genau hier die Zugangsdaten stehen. - Bei fehlgeschlagener Verbindung wiederholen - ein standardmäßig eingeschalteter Schalter, der den Verbindungsversuch einmal wiederholt, bevor die Prüfung als fehlgeschlagen markiert wird. Er deckt nur den Verbindungsschritt selbst ab, nicht die Abfrage.
Antwortvalidierung

Das ist die zentrale Entscheidung bei einer Database-Prüfung: ob Sie testen, dass die Verbindung funktioniert, oder dass sich eine bestimmte Abfrage weiterhin wie erwartet verhält.
- Abfrage - lassen Sie dieses Feld leer, testet die Prüfung nur die Verbindung: Sie öffnet sich und schließt sich, das ist die ganze Prüfung. Tragen Sie beliebiges SQL ein, das Ihr Monitoring-Konto ausführen darf - ein
SELECT, oder eine datenverändernde Anweisung wieUPDATE,DELETEoderINSERT-, führt die Prüfung es bei jedem Durchlauf aus und kann das Ergebnis bewerten. - Abfrageergebnis (nur sichtbar, sobald eine Abfrage eingetragen ist) - wählen Sie Skalarwert, um zu lesen, was in der ersten Spalte der ersten zurückgegebenen Zeile steht (die naheliegende Wahl für ein
SELECT, oder für einUPDATE/INSERTmit einerOUTPUT-Klausel), oder Zeilenanzahl, um zu lesen, wie viele Zeilen betroffen waren (die naheliegende Wahl für ein einfachesUPDATE,DELETEoderINSERTohne eigenes Ergebnis). - Ergebnisverifikation - ein auf diesen Wert angewandter Vergleich: Keine Verifizierung (die Abfrage muss nur fehlerfrei laufen), Gleich, Ungleich, Größer als, Kleiner als, Im Bereich oder Außerhalb des Bereichs. Die Optionen Größer-/Kleiner-als und Bereich fügen ein oder zwei Zahlenfelder hinzu, mit einem Einschließen-/Ausschließen-Schalter an jeder Bereichsgrenze.
- Abfrage bei Fehler wiederholen - ein standardmäßig eingeschalteter Schalter, der die Abfrageausführung einmal wiederholt, falls sie fehlschlägt, getrennt von der Wiederholung auf Verbindungsebene oben.
Wählen Sie nur Verbindung, wenn Sie lediglich wissen müssen, dass die Datenbank erreichbar ist und Verbindungen annimmt - das erkennt regelrechte Ausfälle. Wählen Sie eine Abfrage mit Ergebnisverifikation, wenn Erreichbarkeit allein das eigentliche Problem verfehlen würde: eine Tabelle, die keine neuen Zeilen mehr erhält, eine gespeicherte Anzahl, die aus einem normalen Bereich driftet, oder ein bestimmter Datensatz, der immer vorhanden sein sollte.
Benachrichtigungsabonnements

Legen Sie fest, welche Kontakte über diesen Monitor informiert werden und für welche Ereignisse - Erreichbar, Nicht erreichbar und Wiederholung (eine wiederholte Erinnerung, solange die Prüfung nicht erreichbar bleibt). Ein einzelner Schalter abonniert alle Kontakte gleichzeitig für Erreichbar/Nicht-erreichbar, oder Sie wählen einzelne Kontakte und Ereignisse aus der Tabelle darunter.
Berichtsabonnements

Unabhängig von den Alarmen legen Sie fest, wer regelmäßige Uptime- und Leistungsberichte für diesen Monitor erhält - Täglich, Wöchentlich oder Monatlich - per E-Mail.
Durchgerechnetes Beispiel
Überwachung einer produktiven PostgreSQL-Datenbank, von der eine Anwendung abhängt: Servertyp PostgreSQL, Server : Port db.example.com:5432, Datenbank myapp_prod. Unter Verbindung wird ein eigenes Nur-Lese-Konto eingetragen, und beide Quell-IPs werden vorher der Security Group der Datenbank hinzugefügt. Das Feld Abfrage enthält SELECT COUNT(*) FROM orders WHERE created_at > now() - interval '1 hour', Abfrageergebnis ist Skalarwert, und Ergebnisverifikation ist Größer als mit einem Grenzwert von 0 - wurden in der letzten Stunde keine Bestellungen erfasst, hat etwas vorgelagertes aufgehört zu schreiben, und die Prüfung wechselt auf Nicht erreichbar, obwohl die Datenbank erreichbar ist. Intervall ist 15 Minuten, beide Wiederholungsschalter bleiben eingeschaltet, damit ein kurzer Aussetzer keinen Fehlalarm auslöst, Alarme gehen an das Erreichbar-/Nicht-erreichbar-Abonnement des gesamten Teams, und ein wöchentlicher Bericht geht an den Kontoinhaber.
Problembehandlung
- Jede Prüfung schlägt mit einem Verbindungsfehler fehl. Die häufigste Ursache ist eine Firewall, die für HostTrackers zwei Quelladressen nicht geöffnet wurde - prüfen Sie, dass
4.207.101.172und20.107.152.200auf der Positivliste stehen und dass der Port selbst für sie offen ist. - Die Verbindung gelingt, aber die Authentifizierung schlägt fehl. Prüfen Sie, ob DB-Benutzername und -Passwort korrekt sind und ob das Konto die Berechtigung hat, sich mit der benannten Datenbank zu verbinden, nicht nur mit dem Server.
- Eine Abfrage, die in einem Client-Tool problemlos funktioniert, liefert hier nichts. Ein einfaches
UPDATE,DELETEoderINSERTohneOUTPUT-Klausel hat kein Ergebnis, das als Skalarwert gelesen werden könnte - stellen Sie Abfrageergebnis auf Zeilenanzahl um, oder fügen Sie eineOUTPUT-Klausel hinzu, falls Sie die Zeilendaten zurückbekommen möchten. - Die Ergebnisverifikation löst nie aus. Prüfen Sie, ob der Vergleich und die Zahlenfelder dem erwarteten Bereich entsprechen: Eine Grenze, die auf ausschließend statt einschließend gesetzt ist, sorgt leicht dafür, dass ein Grenzwert nie greift.
- Gelegentliche Einzelfehler, die Sie für vorübergehend halten. Beide Wiederholungsschalter sind standardmäßig eingeschaltet und wiederholen bereits einmal, bevor die Prüfung fehlschlägt - bleiben Fehler dennoch häufig, ist eher ein echtes Verbindungs- oder Abfrageproblem die Ursache als Rauschen.
Verwandte Themen
- Datenbank-Abfrage-Monitoring - die Produktseite für diesen Prüfungstyp.
- Anleitung zum CPU-, RAM- und Festplatten-Monitoring - eine weitere Prüfung, die über HostTrackers private Infrastruktur läuft statt über das öffentliche Netzwerk, nützlich neben einer Database-Prüfung auf demselben Server.
- Anleitung zum SNMP-Monitoring - um Werte direkt von Netzwerkhardware zu lesen statt von einer Datenbank.
- Assertion-Modus und Antwortvalidierungsregeln - die Regelsprache zur Antwortvalidierung, die auch in anderen HostTracker-Prüfungstypen verwendet wird.
- Alle HostTracker-Monitoring-Funktionen - jeden Prüfungstyp im Vergleich sehen.
- 503 Service Unavailable - der Status, den eine Website zurückgibt, wenn die dahinterliegende Datenbank nicht mehr antwortet.
- Alle Monitoring-Anleitungen - die Einrichtungsanleitung für jeden anderen Prüfungstyp.