Uptime-Berichte und SLA-Audits
1) Warum Sie einen formalen Uptime-Reporting-Prozess benötigen
Kundenvertrauen und Vertragstransparenz sind eine einheitliche Messmethode, wiederholbare Berechnungen.
Management von SLO und Fehlerbudget - Verknüpfung von Verfügbarkeit mit Releases und Incidents.
Die richtigen SLA-Credits sind objektive Formeln, vorhersehbare Auszahlungen/Verrechnungen.
Rechtliche Nachhaltigkeit - Evidenzbasis, unabhängige Prüfung, Legal Hold.
2) Begriffe und Grenzen
SLI Availability - Anteil erfolgreicher Prüfungen/Transaktionen pro Periode.
SLO ist ein internes Ziel (z.B. 99. 95% in 28 Tagen).
SLA - externe Verpflichtung (z. B. 99. 9 %/Monat + Servicekredite).
Messfenster - Kalendermonat (SLA) und Rollfenster (SLO).
Scope - welche Komponenten in die Berechnung einfließen (Edge, API, Zahlungen) und welche nicht (Admin-Portal, Non-Prod).
3) Quellen der Wahrheit (und wann welche die Hauptsache ist)
1. Synthetik (Blackbox/Headless) ist das primäre SLI für „Zugänglichkeit durch die Augen des Benutzers“.
2. Protokolle/Metriken - bestätigen das Ausmaß und die Art des Ausfalls.
3. Geschäftsereignisse - „Erfolg der Transaktion“ (z.B. Zahlung autorisiert).
4. Status-Seite - öffentliche Kommunikation; wird mit den Fakten Nr. 1-3 überprüft.
Bei Abweichungen: Priorität für Kunststoffe mit korrektem Quorum aus ≥2 Regionen.
4) Methode zur Berechnung der Verfügbarkeit
4. 1 Grundformel
Availability = Успешные проверки / Все проверки
ErrorBudget = 1 − SLO
Downtime(m) = (1 − Availability) × Длительность_периода(в мин)
4. 2 Viel-regionales Quorum
Ein Vorfall wird gezählt, wenn ≥N unabhängige Regionen/ASN gleichzeitig eine Ablehnung registrieren.
Empfohlen: N = 2 von 3 (EU/NA/APAC).
4. 3 Arten von SLI
HTTP SLI: код 2xx/3xx, latency ≤ T.
DNS/TLS SLI: NXDOMAIN/SERVFAIL/expiry.
SLI-Geschäft: erfolgreiche Transaktionen/alle Versuche (mit Ausnahme von Kundenausfällen).
4. 4 Ausnahmen (dokumentiert)
Geplante Wartungsfenster im Voraus angekündigt N Stunden und eingehalten.
Force majeure vom SLA (z.B. IX-Katastrophenanbieter) - nur mit Nachweis und öffentlicher Bekanntmachung.
Client-Fehler/Einschränkungen (Quota exceeded, 4xx).
5) Die Politik der Wartung von Fenstern
Im Vertrag vereinbarte Zeitfenster (z. B. So 02: 00-04: 00 UTC + 0).
Die' maintenance = true' -Markierungen in Alerts/Panels → eine Ausnahme von SLI.
Benachrichtigungsschwelle: mindestens 5 Werktage im Voraus (oder wie im Vertrag).
Außerhalb des Fensters - gilt als SLA-Einfluss.
6) Randfälle und Rundungsregeln
Brownout (partielle Verschlechterung): Zählen Sie den Anteil der Ausfälle (gewichteter Downtime) und nicht „0/1“.
Flapping: Mindestmesseinheit - Probenintervall (z. B. 30-60 Sekunden) + Hysteresis (für: 2-5 Minuten).
Clock drift: alle Zeiten in UTC und ISO-8601; NTP-Synchronisation.
7) Beispiele für PromQL (Synthetik → Aptame)
Erfolg der HTTP-Prüfung:promql probe_success{job="blackbox-http"} == 1
p95 latency:
promql histogram_quantile(0.95, sum by (le, target) (rate(probe_http_duration_seconds_bucket[5m])))
SLA-Aptime pro Monat (Sekunde):
promql sum_over_time((probe_success==1)[30d]) / (30246060)
Quorum-Fehler (≥2 der Region in 3 Minuten):
promql sum by (target) (max_over_time((probe_success==0)[3m])) >= 2
8) SQL-Beispiele (Berichtsaggregationen)
Monatliches Aptime und Downtime:sql with checks as (
select target, ts, success -- success: 1/0 from synthetic_checks where ts >=:from and ts <:to
),
agg as (
select date_trunc('month', ts) m, target,
sum(success)::float / count() as availability from checks group by 1,2
)
select m, target, availability,
(1-availability) extract(epoch from (date_trunc('month', m) + interval '1 month' - date_trunc('month', m))) / 60 as downtime_minutes from agg;
Abgleich mit der Status-Seite (Incidents):
sql select a.m, a.target, a.downtime_minutes, s.incident_id, s.start_utc, s.end_utc from monthly_downtime a left join statuspage_incidents s on a.m = date_trunc('month', s.start_utc)
and tstzrange(s.start_utc, s.end_utc) && daterange(a.m, a.m + interval '1 month');
9) Monatliche Berichtvorlage (kundenfreundlich)
yaml period: "2025-10-01..2025-10-31 (UTC)"
services:
- name: "API Edge"
sla: "99.90%"
measured_availability: "99.93%"
downtime:
total: "30m 14s"
windows:
- start: "2025-10-12T03:12Z"
end: "2025-10-12T03:38Z"
impact: "EU+NA, HTTP 5xx spike, p95>2s"
root_cause: "DB connection pool exhaustion"
rca_link: "INC-20251012-0312"
slo_budget:
period_target: "0.10%"
consumed: "0.07%"
- name: "Payments API"
sla: "99.95%"
measured_availability: "99.97%"
summary:
sla_breaches: 0 service_credits: 0 maintenance:
announced: 2 total_duration: "48m"
signatures:
generated_at: "2025-11-01T10:00Z"
report_id: "SLA-2025-10-API"
10) SLA-Kredite: Berechnung und Anwendung
Tabelle der Kredite: zum Beispiel 99. 0–99. 5% → 5% MRR; 98. 0–99. 0% → 10% usw.
True-up: Die Gutschrift wird als Gutschrift auf die nächste Rechnung angewendet.
Automatisierung: Regel "wenn 'measured _ availability <SLA' → 'credit _ note. create()`».
Schaufenster für den Kunden: die Portalkarte „SLA Guthabenbilanz“.
11) Prüfung, Nachweis und rechtlicher Halt
Audit-Trail: wer/was/wann berechnet, Methodenversion, Prüfsummen.
Raw-Daten sind unveränderlich (append-only); Anpassungen - einzelne Einträge.
Legal Hold: Einfrieren einer Reihe von Daten (Proben, Protokolle, Incident Cards, Alerts).
Nachbildung von Archiven: unabhängiger Speicher (WORM/S3 Object Lock).
12) Abgleich mit der öffentlichen Statusseite
Der Vorfall auf der Status-Seite muss eine Zeitlinie und Komponenten haben.
Eine Diskrepanz zwischen Zeit und Maßstab wird → von discrepancy-record erstellt und von RCA durchgeführt.
Das Ergebnis des Berichts enthält den Abschnitt „Reconciliation Notes“.
13) Vorfälle und Berichterstattung
Jedes Downtime-Fenster entspricht einer INC-Karte (ID, SEV, Owner, RCA, CAPA).
Im Bericht: Link zu INC, kurze Wurzelursache, CAPA-Status.
Für SEV-1: postmore ≤ 48 Stunden vom Schließen.
14) Überwachung der Datenqualität
Probenhygiene:> 99% erfolgreiche Scrapingmittel, keine Lücken> 5 Minuten.
Anti-Rauschen: quorum + multi-window, debounce.
Die Abtastung der Tracks/Logs wird aufgezeichnet und dokumentiert.
Methodentests: Unit-Tests von Berechnungen, goldene Dateien auf historischen Daten.
15) Sicherheit und Privatsphäre
TLS/mTLS für ingest, Paketsignatur (HMAC).
PII-Revision in Protokollen/Berichten; Der SLA-Bericht darf keine personenbezogenen Daten offenlegen.
RBAC/ABAC für Berichte; Zugangsspuren werden in das Audit-Log geschrieben.
16) Dashboards und SLO-Widgets (was zu zeigen)
Gesamtverfügbarkeit für Dienstleistungen pro Monat/Quartal.
Downtime-Fenster mit Severity und Detect Channel.
Error budget burn (fast/slow) und Trends.
Releases overlay - Anmerkungen zu den Layouts.
SLA Credits Prognose - mit dem aktuellen Trend.
17) Implementierungsplan (3 Iterationen)
1. Modell und Daten (2 Wochen): SLI/SLO/SLA fixieren, Quorum-Synthetik einbinden, „Rohstoffe“ im DWH sammeln.
2. Berechnung und Bericht (2-3 Wochen): Formeln, SQL/PromQL, YAML/PDF-Vorlagen, Kundenportal, Auto-Credits.
3. Audit und Automatisierung (3-4 Wochen): Legal Hold, Reconciliation mit Status-Seite, signierte Webhooks, Disputationsregelungen.
18) Checkliste zur Berichtsqualität
- Scope, SLI, Methodik und Messfenster sind definiert.
- Es gibt quorum und Multi-Fenster; Flapping wird unterdrückt.
- Ausnahmen (maintenance/force majeure) werden dokumentiert.
- Jedes Downtime-Fenster ist mit INC und RCA verbunden.
- SLA-Credits werden gezählt und in der Abrechnung berücksichtigt.
- Der Bericht ist reproduzierbar (Formel-/Datenversionen).
- Audit-Trail und Legal Hold enthalten.
- Öffentliche Statusseite vereinbart (reconciliation notes).
19) Mini-FAQ
Warum ist Synthetik die Hauptquelle?
Es ist dem Benutzerpfad am nächsten und enthält den Umfang (DNS/CDN/WAF). Metriken/Logs - klären die Ursache.
Wie zählt man partielle Degradationen?
Gewichtete Downtime: Der Anteil der Fehlschläge × die Dauer des Fensters, nicht „alles oder nichts“.
Muss ich „rohe“ Kontrollen aufbewahren?
Ja. Für die Prüfung und Neuberechnung im Streitfall ist raw ein Muss.
Ergebnis
Uptime-Berichte und SLA-Audits sind keine „Zahl am Ende des Monats“, sondern ein reproduzierbares System von Messungen, Regeln und Nachweisen: korrekte SLIs, Quorum-Checks, transparente Formeln, Verknüpfung mit Incidents und Billing, Ausnahmekontrolle und Legal Hold. Erfassen Sie die Methodik, automatisieren Sie die Abrechnung und Gutschriften, halten Sie den Audit-Trail - und Ihre SLAs werden überschaubar, verständlich und sicher.