GH GambleHub

SLA, SLO und Zuverlässigkeitskennzahlen

1) Begriffe und Unterschiede

SLI (Service Level Indicator) ist ein messbarer Qualitätsindikator (z.B. Anteil erfolgreicher Anfragen, p95 Latenz).
SLO (Service Level Objective) - SLI-Zielwert pro Zeitfenster (z. B. "Erfolg ≥ 99. 9% in 28 Tagen").
Budgetfehler (Error Budget) - der zulässige Anteil der Nichterfüllung von SLO: „1 − SLO“.
SLA (Service Level Agreement) - vertragliche Verpflichtungen mit Geldbußen/Krediten (extern).
Zuverlässigkeits-KPIs sind operative Prozessmetriken (MTTD/MTTA/MTTR/MTBF,% automatische Mitigate, Alert Coverage, etc.).

💡 Regel: SLA ≤ SLO; Der externe Vertrag darf nicht strenger sein als der interne Zweck der Dienstleistung.

2) Wie wählt man SLI (basierend auf Golden Signals)

1. Latency - p95/p99 für wichtige Endpunkte.
2. Traffic - RPS/RPM/Nachrichtenfluss.
3. Errors - Anteil von 5xx/Geschäftsfehler (z.B. Zahlung „decline durch PSP Schuld“ ausschließen).
4. Sättigung - Sättigung von Ressourcen (CPU/RAM/IO/lag).

Kriterien für einen guten SLI:
  • Korreliert mit der Benutzererfahrung (user-perceived).
  • Technisch verfügbar und stabil in der Messung.
  • Wir kontrollieren (Maßnahmen zur Verbesserung sind möglich).
  • Niedrige Kosten für die Sammlung.

3) Formeln und Beispiele

3. 1 Verfügbarkeit (availability)


Availability = Успешные запросы / Все запросы
Error Budget (за период) = 1 − SLO

Beispiel: SLO 99. 9% in 30 Tagen → Fehlerbudget = 0. 1%, was 43 min 12 sec Nichtverfügbarkeit entspricht.

3. 2 Latenz

Die SLO nach Latenz formulieren wir als Anteil der Anfragen, die in die Schwelle passen:

Latency SLI = доля запросов с duration ≤ T
SLO пример: 99% запросов ≤ 300 мс (rolling 28d)

3. 3 Zahlungen (Geschäftsebene)


Payment Success SLI = (успешные проводки — внешние отказы PSP) / все попытки
💡 Wir schließen „decline auf der Kundenkarte“ von den Fehlern des Dienstes aus; Wir schließen nur die Schuld der Plattform ein.

4) Fehlerhaftes Budget und Burn-Rate

Budgetfehler - Ihr „Treibstofftank“ für Innovationen (Freigaben, Experimente).

Burn-Rate - Verbrauchsrate des Budgets:
  • schneller Kanal (Detail in ~ 1 h),
  • langsamer Kanal (Trend ~ 6-12 h/24 h).
Schwellenideen:
  • Wenn Burn-Rate> 14. 4 für 1 Stunde - SEV-1 (wir essen das Tagesbudget für ~ 100 Minuten).
  • Wenn Burn-Rate> 6 in 6 Stunden - SEV-2 (schnelle Degradation).

5) Alerting durch SLO (Multi-Window, Multi-Burn)

Fehlerindikator: Anteil von 5xx oder Latenzstörungen.

Beispiele für PromQL (zusammengefasst):
promql
Доля ошибок за 5 минут sum(rate(http_requests_total{status=~"5.."}[5m]))
/
sum(rate(http_requests_total[5m]))

Быстрый burn (1m окно)
(
sum(rate(http_requests_total{status=~"5.."}[1m])) /
sum(rate(http_requests_total[1m]))
) / (1 - SLO) > 14.4

Медленный burn (30m окно)
(
sum(rate(http_requests_total{status=~"5.."}[30m])) /
sum(rate(http_requests_total[30m]))
) / (1 - SLO) > 2
Verwenden Sie für SLOs nach Latenz Perzentil-Histogramme:
promql p95 latency histogram_quantile(0.95, sum by (le) (rate(http_request_duration_seconds_bucket[5m])))

6) SLI/SLO Beispiele nach Domain

6. 1 API-Gateway/Edge

SLI-Fehler: Anteil der Antworten 5xx <0. 1% (28d).
SLI-Latenz: p95 ≤ 250 ms (Tag).
SLO: Availability ≥ 99. 95% (Quartal).

6. 2 Zahlungen

SLI-Erfolg: Erfolgsabrechnung (ohne Kundenausfälle) ≥ 99. 8% (28d).
SLI-Latenz: Autorisierung ≤ 2 Sekunden für 99% (Tag).
SLO: Time-to-Wallet p95 ≤ 3 мин (24h).

6. 3 Datenbanken (PostgreSQL)

SLI-Lag: Replikations-Lag p95 ≤ 1 sec (Tag).
SLI-Errors: Anteil der Abfragefehler ≤ 0 05% (28d).
SLO: Cluster-Verfügbarkeit ≥ 99. 95%.

6. 4 Warteschlangen/Streaming (Kafka)

SLI-Lag: Verbraucherlag von p95 ≤ N Nachrichten (Stunde).
SLI-Durability: Schreibbestätigung ≥ 99. 99% (28d).
SLO: Verfügbarkeit von Brokern ≥ 99. 9%.


7) KPI des Zuverlässigkeitsprozesses

MTTD (Mean Time To Detect)

MTTA (… To Acknowledge)

MTTR (… To Restore)

MTBF (… Between Failures)

% der automatischen Mitigationsvorfälle

SLO/Alert-Abdeckung der Top-Verkehrswege (Ziel ≥ 95%)

Anteil der Freigaben mit Kanarienstufe

Verbrauch von fehlerhaften Budgets nach Teams/Fics


8) Wie man SLO realistisch setzt

1. Messen Sie die aktuelle Grundzuverlässigkeit (3-4 Wochen).
2. Identifizieren Sie „sensible“ Benutzerpfade (Login, Einzahlung, Spiel).
3. Berücksichtigen Sie die Kosten jeder Abweichung (Zeit, Geld, Ruf).
4. Wählen Sie ein ehrgeiziges, aber erreichbares Ziel (10-30% Verbesserung gegenüber dem Basisziel).
5. Überprüfen Sie vierteljährlich.

Anti-Muster:
  • Gleich „fünf Neuner“ ohne Begründung.
  • SLO durch Metriken, die für den Benutzer nicht sichtbar sind (z. B. CPU ohne UX-Kommunikation).
  • Zu viel SLO → Sprühen Fokus.

9) Berichterstattung über SLOs und Budgets

Standardbericht (wöchentlich/monatlich):
  • Ausführung für jedes SLO: Tatsache vs Ziel, Trends, Vertrauen.
  • Zusammenfassung des Fehlerverbrauchs: Wie viel Budget wird „verbrannt“ als von wem (Release/Incident).
  • Top fünf Ursachen für Degradationen, CAPA-Plan und Aufgabenstatus.
  • Auswirkungen auf das Geschäft: Conversion, ND, Retention, LTV.

10) Verknüpfung mit Release Policy

Fehlerbudget <50% → freie Releases.
50-80% → „vorsichtiger Modus“: nur low-risk/Kanarienschnitt.

💡 80% → Freeze-Releases, Fokus auf Stabilisierung und Verschuldung.

11) SLA (vertraglich) - Klauselvorlagen

Verfügbarkeitspflicht: z.B. 99. 9 %/Monat.
Ausnahmen (Force Majeure): DDoS außerhalb angemessener Kontrolle, Drittanbieter.
Messfenster und Verantwortungsbereich: Metrikquellen, Berechnungsmethode.
Credits/Strafen: Tabelle der Stufen (z. B. Unzugänglichkeit 60-120 min → Kredit X%).
Eskalations- und Benachrichtigungsverfahren: Fristen, Kanäle.
Daten und Privatsphäre: Maskierung, Speicherung, Legal Hold.
Arbeitsplan zur Vermeidung von Wiederholungen (CAPA) im Falle eines Verstoßes.

💡 Der externe SLA sollte auf spezifische, überprüfbare SLIs und die Berechnungsmethode verweisen.

12) Messwerkzeuge

Passive Metriken: Prometheus/Mimir/Thanos, Exporteure.
Logs: Loki/ELK für die Erfolgs-/Fehlerzählung auf Business-Ebene.
Synthetik: aktive Proben (Login/Einzahlung/Spiel) von cron.
Spurenlage: Tempo/Jaeger für „Engstellen“ p99.
Zahlung/Finanzen: Quellen der Ground Truth für Payment SLI.


13) Beispielabfragen (Vorlagen)

Anteil erfolgreicher API-Anfragen (ohne 4xx als Client):
promql
1 - (
sum(rate(http_requests_total{status=~"5.."}[5m]))
/ sum(rate(http_requests_total[5m]))
)
SLO-Karte:
yaml slo:
name: "API Availability"
window: "28d"
target: 0.999 sli: "1 - 5xx%"
owner: "Platform SRE"
alerting:
fast_burn: {window: "1h", factor: 14.4}
slow_burn: {window: "6h", factor: 6}
Zahlungserfolg (nach Geschäftsereignissen in Logs/Stream):

success_rate = (count_over_time({app="payments"}     = "status=success"[5m]))
/ (count_over_time({app="payments"}     ~ "status=(success    fail)"[5m]))
💡 Verfeinern Sie die Filter, um „decline by client“ auszuschließen.

14) FinOps und Zuverlässigkeit

Kosten pro 9: Die Kosten für das Hinzufügen einer „Neun“ steigen exponentiell.
Nutzenkurve: Optimum, wo Umsatzsteigerung/Verlustminderung die Kosten der zusätzlichen „9“ ≥.
SLO-Portfolio: unterschiedliche Ebenen für unterschiedliche Pfade (kritische Zahlungen „teurer“, Reporting „günstiger“).


15) SLO/alert Qualität - Checkliste

  • SLI korreliert mit UX- und Geschäftsmetriken.
  • Fenster und Aggregation vereinbart (Rolling 28d/Quartal).
  • Alerts Multi-Fenster, ohne Flapping, mit Rollenführung.
  • Dokumentation: Besitzer, Formel, Quellen, Runbook.
  • SLO-Demo-Panel mit fehlerhaftem Budget und Burn-Indikatoren.
  • Regelmäßige Überprüfung der Ziele (vierteljährlich).
  • Synthesetests nach Schlüsselszenarien.

16) Implementierungsplan (4 Iterationen)

1. Woche 1: Inventar der Benutzerpfade, SLI-Entwürfe, grundlegende Dashboards.
2. Woche 2: SLO-Formalisierung, Budgetberechnung, Alerts (Fast/Slow Burn).
3. Woche 3: Integration in den Incident/Release-Prozess, Freeze-Regeln.
4. Woche 4 +: vertragliche SLAs, vierteljährliche Revuen, Finopmodell „cost per 9“.


17) Mini-FAQ

Brauche ich ein SLO pro Service?
Besser 2-3 Schlüssel (Erfolg + Latenz) statt Dutzende von sekundären.

Was tun, wenn das Budget erschöpft ist?
Freeze-Releases, Fokus auf Stabilisierung und CAPA, Rücknahme experimenteller Fich.

Wie vermeidet man den Konflikt zwischen Release-Geschwindigkeit und Zuverlässigkeit?
Planen Sie Veröffentlichungen „nach Budget“, implementieren Sie kanarische Layouts und Feature-Flags.


Ergebnis

Die Zuverlässigkeit wird nicht durch eine Reihe unterschiedlicher Metriken gesteuert, sondern durch ein System: SLI → SLO → Budgetfehler → Burn Alerting → Incident Process → CAPA → SLA. Standardisieren Sie Definitionen, Datenquellen und Berichte, verknüpfen Sie Ziele mit Benutzererfahrung und Wirtschaftlichkeit und überprüfen Sie regelmäßig die Neunerstufe, abhängig vom tatsächlichen ROI.

Contact

Kontakt aufnehmen

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

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.