Zum Inhalt

Uptime-Monitor

Der Uptime-Monitor überwacht die Erreichbarkeit von Websites von außen (vom Controller aus) und alarmiert bei Ausfall und Wiederherstellung. Er wird als Extension über den Marktplatz installiert.

Zwei-Stufen-Freigabe

  1. Paket-Permission — im Paket legt der Admin mit Uptime-Monitor erlauben (perm_uptime_monitor) fest, ob ein Kunde die Funktion nutzen darf, plus ein Limit Monitore (max_uptime_monitors).
  2. Pro-Website-Aktivierung — der Kunde muss den Monitor je Website selbst anlegen und aktivieren. Nur erlaubte und aktivierte Monitore werden geprüft.

Monitor anlegen

  • Ziel: Kunden wählen eine ihrer eigenen Domains, Subdomains oder Aliase aus einer Liste aus — externe Hosts sind nicht möglich (Missbrauchs-/SSRF-Schutz). Der Server prüft die Zugehörigkeit bei jeder Speicherung erneut. Admins dürfen ein beliebiges Ziel frei eingeben (volle URL für HTTP/HTTPS, Host für TCP).
  • Typ: HTTP, HTTPS oder TCP (Port).
  • Schlüsselwort (optional): muss im Antwort-Body vorkommen, sonst gilt die Seite als DOWN.
  • Prüfintervall: 1 bis 60 Minuten.

Statistik & Dashboard

Statt einer Liste einzelner Checks zeigt der Monitor einen sauberen Graphen:

  • Status-Streifen — ein Segment je Check (grün = erreichbar, rot = Ausfall) für den 24-Stunden-Verlauf auf einen Blick.
  • Antwortzeit-Diagramm — Response-Zeit über die Zeit, plus Kennzahlen: Uptime %, Anzahl Checks, Ø und Max. Antwortzeit.

Ist die Funktion im Paket freigegeben, erscheint die Uptime-Statistik zusätzlich direkt auf dem Kunden-Dashboard — mit Umschalter, wenn mehrere Monitore laufen.

Flapping-Schutz (Schwellen)

Damit kurze Aussetzer keinen Alarm-Sturm auslösen:

  • Fehler bis DOWN — erst nach N aufeinanderfolgenden Fehl-Checks gilt der Monitor als ausgefallen (Standard 3).
  • Erfolge bis UP — erst nach N erfolgreichen Checks gilt er wieder als erreichbar (Standard 2).

Ein Alarm wird nur beim bestätigten Statuswechsel verschickt, nie wiederholt während eines laufenden Ausfalls. Die gerade aktive Prüf-Session bleibt unberührt.

Benachrichtigung

  • E-Mail — an Admin und/oder Website-Besitzer (in dessen Sprache).
  • Webhook — POST an eine frei wählbare URL im Slack/Discord-kompatiblen JSON-Format.

Grenzen (ehrlich)

Läuft der Controller auf demselben Server wie die Website (Single-Server), erkennt der Monitor App-Level-Ausfälle (nginx/PHP/HTTP-Fehler, abgelaufenes Zertifikat, langsame Antwort). Ein Totalausfall des Servers lässt sich nur von einem anderen Server aus erkennen — das ist eine spätere Ausbaustufe.