GH GambleHub

Überwachung von Aptime und Heartbeat

1) Warum es notwendig ist

Frühzeitige Erkennung von Ausfallzeiten am Perimeter und im Inneren (Edge ↔ Core).
Bestätigung der Benutzerverfügbarkeit (nicht nur „ob die Pods live sind“).
Vertragliche Berichterstattung über SLA/SLO und rechtliche Verpflichtungen.
Steuerung der Hintergrundprozesse (Cron, ETL, Payment Syncs) über Heartbeat.

Methoden: Goldene Signale (Latenz/Verkehr/Fehler/Sättigung), ROT, Bindung an SLO und fehlerhaftes Budget.

2) Arten von Inspektionen (Synthetik)

ICMP: grundlegendes Netzwerk/IP-Verfügbarkeit.
TCP: Port live/handshake (z.B. 443/5432).
TLS: Gültigkeit/Laufzeit/Zertifikatskette.
HTTP (S): Antwortcode, Latenz, Header, Schlüsselteilstrings im Körper.
DNS: Resolve, TTL, NXDOMAIN/SERVFAIL.
Headless-Browser (Benutzerpfad): Login → Aktion → Logout.
Custom probes: Zahlungsautorisierung in der PSP-Sandbox, interne Geschäftssynthese (Deposit-Simulation).

Tipps: Überprüfen Sie sowohl Edge als auch private Endpoints (von innen VPC/K8s) sind verschiedene Risikodomänen.

3) Aptime-Überwachungsarchitektur

Testagenten nach Region (mindestens 3 Geopunkte).
Blackbox-Exporteur für HTTP/TCP/TLS/DNS.
Synthetik entlang der Pfade (sequentielle Schritte) getrennt; Speichern Sie die Skripte.
Prometheus/Mimir/Thanos: Sammlung von Metriken, SLO/Alert-Regel.
Alertmanager/Pager: P1/P2 Routing, Eskalation.
Status Page: Transparente Updates für Unternehmen/Kunden.
Logs/Traces: Drilldown durch 'trace _ id '/Korrelation.

4) Gesundheit-Endpunkte: Entwurf

/ healthz (liveness) - „ob der Prozess lebt“.
/ readyz (Bereitschaft) - „bereit, Verkehr zu empfangen“ (Abhängigkeiten mit Schwellen).
/ startupz - „wurde initialisiert“.
/ check - erweiterte Business Health (einfache DB/Cache-Checks mit Timeouts und Circuit-Breaker).
Semantic health: Code 200 nur, wenn kritische Abhängigkeiten funktionieren; Verschlechterung → 503.

Regeln: Timeout ≤ 2-3s, limitierte Sub-Checks, keine PII in den Antworten, schwere Teile zwischenspeichern.

5) Herzschlag für Jobs und Worker

Dead Man's Switch-Modell: Wenn der „Tick“ nicht rechtzeitig kam - alert.
Verwendung: cron/ETL/Rechnungsjobs, Off-Chain-Zahlungsprüfungen, Hintergrundworker.

Möglichkeiten:
  • Push-Heartbeat HTTP: Der Job macht „POST/Heartbeat/< job>“, wenn er fertig ist.
  • Metrics-pull: Belichten Sie' last _ success _ timestamp 'und alertite mit „älter als N Minuten“.
  • Watchdog: konstantes Signal vom Agenten; verschwunden - alert „Unterbrechung der Überwachung“.

6) Beispiele für Konfigurationen

6. 1 Blackbox-exporter (HTTP + TLS + DNS)

yaml modules:
http_2xx:
prober: http http:
method: GET preferred_ip_protocol: "ip4"
fail_if_not_ssl: true valid_http_versions: ["HTTP/1. 1","HTTP/2"]
tls_config:
insecure_skip_verify: false headers:
User-Agent: "uptime-probe"
body: ""
ip_protocol_fallback: false

tls_cert:
prober: tcp tcp:
query_response: []
tls: true tls_config:
insecure_skip_verify: false

dns:
prober: dns dns:
query_name: "api. example. com"
valid_rcodes: ["NOERROR"]
preferred_ip_protocol: "ip4"

6. 2 Prometheus: Ziele und Jobs

yaml scrape_configs:
- job_name: 'blackbox-http'
metrics_path: /probe params:
module: [http_2xx]
static_configs:
- targets:
- https://api. example. com/healthz
- https://pay. example. com/readyz relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- target_label: __address__
replacement: blackbox-exporter:9115
- source_labels: [__param_target]
target_label: instance

6. 3 Heartbeat-Metrik für Joba (Prometheus-Exporteur)

Exponieren Sie die Metrik:

job_last_success_timestamp_seconds{job="settlement"} 1. 730000e+09
Ahlert:
promql
(time() - job_last_success_timestamp_seconds{job="settlement"}) > 900

6. 4 Watchdog (Dead Man’s Switch)

Aktivieren Sie im Alertmanager die Route für die Alert 'Watchdog' (immer firing) → wenn die Warnung nicht kommt - die Überwachung ist kaputt.

7) PromQL Beispiele für Aptyme

HTTP-Verfügbarkeit (0/1):
promql probe_success{job="blackbox-http"} == 1
p95 Latenz durch Proben:
promql histogram_quantile(0. 95, sum by (le, instance) (rate(probe_http_duration_seconds_bucket[5m])))
TLS Frist läuft <7 Tage:
promql
(min_over_time(probe_ssl_earliest_cert_expiry[5m]) - time()) < 7243600
DNS-Fehler:
promql rate(probe_dns_rcode{rcode!="NOERROR"}[5m]) > 0
Uptime SLI (rolling 28d):
promql sum_over_time((probe_success==1)[28d]) / (28246060)

8) Alerting: Schwellen und Anti-Lärm

Multi-region quorum: Wird ausgelöst, wenn ≥2 Regionen einen Rückgang sehen.
Multi-Fenster: 1-5 min (schneller Kanal) + 30-60 min (stetiger Trend).
Empfindlichkeit: debounce/for: 2-5 Minuten gegen Flapping.
Korrelation: Verknüpfen Sie die Aptime Alert mit Leyer-Metriken (Edge, DNS, WAF, Origin).
Windows-Wartung: Alert-Unterdrückung durch 'Wartung = wahr' -Tags.

Beispiel für eine Regel:
promql
≥2 regions simultaneously failed sum by (target) (max_over_time (probe _ success = = 0) [3m]))> = 2

9) Viele-regionale und viele-Verkäufer-Kontrollen

Mindestens 3 Geographien (EU/NA/APAC) und verschiedene ASNs.
Duplizieren: eigene Proben + externer Aptime-Anbieter.
IPv4/IPv6, HTTP/2/3, verschiedene CDNs und WAF-Profile.

10) Sicherheit der Inspektionen

Allowlist IP der Probenbereiche auf WAF/LB.
Rate-Limits und Capcha-Bypass für Gesundheits-Endpunkte/Proben.
Header Signature (HMAC) für private Gesundheit.
Getrennte Domains: öffentliche Proben und private (/internal/health).
Geben Sie keine internen Versionen/Configs an/healthz zurück; Nur Status.

11) SLO und Aptime Reporting

SLI-Verfügbarkeit: Anteil erfolgreicher 2xx/3xx HTTP-Samples.
SLO Beispiel: ≥ 99. 95% in 28 Tagen in den meisten Regionen.
Fehlerhaftes Budget: „1 − SLO“ verwaltet → Releases.
Burn-Rate-Alerts: schneller/langsamer Kanal für einen Bruchteil der Probenausfälle.

12) Heartbeat für Payment und Critical Job

Jobs „um Geld“ (Transfers, Register) - doppelte Kontrolle: Heartbeat + Geschäftszähler (wie viele Datensätze verarbeitet werden).
Alertas durch „Stille“ (keine neuen Ereignisse> N Minuten) und durch Verzögerung (Verzögerung von Echtzeit).

13) Status der Seiten

Trennen Sie Komponenten (APIs, Zahlungen, Backends, CDNs).
Automatische Updates von Alert, manuelle Kommentare über die Comms-Rolle.
Geschichte der Vorfälle, Postmortem-Links, geplante Arbeiten.

14) Integration in den Incident-Prozess

Alert SEV nach den Regeln von quorum + Dauer.
Auto-Erstellung der Störfallkarte, Kriegsraum, IC-Zuordnung.
Kommunikationsvorlagen (intern/extern), ggf. Legal Hold.
Post-Verifizierung: Synthetik grün ≥ X Minuten vor „Resolved“.

15) Leistung und Kosten

Probenfrequenz: kritisch - alle 30-60s; sekundär - 1-5 min.
Lagerung: Downsampling/Recording-Regeln für lange Fenster.
Budget für externe Anbieter: Begrenzen Sie erweiterte Browser-Skripte nach Zeitplan.

16) Qualitätscheckliste

  • Es gibt/healthz ,/readyz ,/startupz mit klarer Semantik.
  • Proben aus ≥3 Regionen/ASN, IPv4/IPv6.
  • TLS/DNS-scans und alerts T-30/T-7/T-1 Tage.
  • Heartbeat aller kritischen Jobs (und Business „Stille“).
  • Multi-window + quorum, ohne Flapping.
  • Drilldown: Buttons zu Logs/Tracks/Dashboards.
  • Status-Seite und Kommunikationsvorlagen.
  • Dokumentation von SLOs/Metriken und Eigentümern.

17) Implementierungsplan (3 Iterationen)

1. Woche 1: HTTP/TLS/DNS Blackbox-Tests für kritische Domains, Status-Seite, Basis-Alerts.
2. Woche 2: Viel-Regionalität, Quorum-Regeln, Herzschlag-Top-Job, Watchdog.
3. Woche 3: Headless-Szenarien (Login/Deposit), SLO-Reporting, Integration in den Incident-Prozess.

18) Mini-FAQ

Warum sind externe Proben besser als interne?
Externe sehen den realen Pfad des Benutzers (DNS/CDN/WAF), interne sehen den Ursprungszustand. Wir brauchen beides.

Muss ich bezahlte PSPs überprüfen?
Ja: Synthetik in der Sandbox und Überwachung der Status-Seiten; beim Abbau - automatisches Smart-Routing.

Wie kann man Lärm reduzieren?
Quorum, Multi-Window, For-Delay, Suppression auf Wartung, klare SLO-Schwellenwerte und Besitz.

Summe

Bei der Aptime-Überwachung geht es nicht nur um Ping. Es ist ein System: multiregionale Synthetics + hochwertige Health-Endpoints + Heartbeat Job + SLO/Alerting + Status-Seiten. Standardisieren Sie Inspektionen, reduzieren Sie Lärm, schützen Sie Proben und verknüpfen Sie alles mit dem Incident-Prozess - so reduzieren Sie die MTTR und sparen Sie ein fehlerhaftes Budget.

Contact

Kontakt aufnehmen

Kontaktieren Sie uns bei Fragen oder Support.Wir helfen Ihnen jederzeit gerne!

Telegram
@Gamble_GC
Integration starten

Email ist erforderlich. Telegram oder WhatsApp – optional.

Ihr Name optional
Email optional
Betreff optional
Nachricht optional
Telegram optional
@
Wenn Sie Telegram angeben – antworten wir zusätzlich dort.
WhatsApp optional
Format: +Ländercode und Nummer (z. B. +49XXXXXXXXX).

Mit dem Klicken des Buttons stimmen Sie der Datenverarbeitung zu.