GH GambleHub

Operacje i → Wskaźniki kontroli zarządzania i SLA

Audyt mierników i SLA

1) Dlaczego go potrzebujesz

Jeśli mierniki są złe - decyzje będą błędne, SLA zostaną naruszone „na papierze” lub odwrotnie, aby ukryć problemy. Audyt mierników i SLA gwarantuje, że obietnice dla użytkowników i partnerów są porównywalne, niezawodne i legalnie bezpieczne.

Cele:
  • Podać pojedyncze „źródło prawdy” (SSOT) i powtarzalne obliczenia.
  • Zmniejszenie rozbieżności między deskami rozdzielczymi/raportami/rozliczeniami.
  • Niech SLA będą oparte na dowodach.
  • Wykrywanie degradacji w pomiarach już w usługach.

2) Podstawowe pojęcia i granice odpowiedzialności

Metryczne: mierzona ilość (RPS, p95, CR, GGR, wskaźnik sukcesu).
KPI/OKR: cele, z którymi powiązane są wskaźniki.
SLO: docelowa jakość usług (na przykład "p99 ≤ 400 ms 99. 9% czasu").
SLA: obietnica zewnętrzna; istotne pod względem prawnym, oparte na SLO.
OLA: wewnętrzne porozumienie między zespołami/sprzedawcami, wspiera SLA.
SSOT: system/przechowywanie, którego dane są uważane za odniesienia do sprawozdawczości.

3) Taksonomia mierników (warstw)

1. Infrastruktura: procesor/pamięć/IO/Net, strąki/węzły, HPA/VPA.
2. Platforma: kolejki/strumienie (lag, przepustowość), DB/bufory (połączenia, trafienie), API (p95/p99, 5xx).
3. Przepływy biznesowe: wpłaty/wypłaty, zakłady, uruchomienia gier, autoryzacje, KYC.
4. Produkt/marketing: konwersje, ARPPU/LTV, kampanie.
5. Jakość procesów: MTTA/MTTR, wskaźnik awarii zmiany, zakres listy kontrolnej.

Zasada: Każda metryka musi mieć warstwę, właściciela i wzór.

4) Źródła danych i „prawdziwe”

Telemetria online: Prometheus/OTel, logi (ELK/ClickHouse), ślady.
Zdarzenia i rachunkowość: Kafka/Outbox, DWH/Data Marts (Query/ClickHouse).
Artefakty ręczne: pośmiertne, bilety, rejestry incydentów.
Rejestry zewnętrzne: raporty dostawcy (PSP/KYC/studios), rozliczenia.

Rozwiązywanie konfliktów: w przypadku rozbieżności „online vs DWH” stosuje się rozporządzenie priorytetowe (na przykład w przypadku SLA - agregaty z DWH z możliwością śledzenia źródeł).

5) Proces audytu mierników (pętla kontrolna)

1. Inwentaryzacja: katalog mierników/SLO/SLA (nazwa, właściciel, warstwa, wzór, źródło, częstotliwość obliczeń).
2. Weryfikacja wzoru: uzgodnienie zapytań SQL/promo z definicją (testy jednostkowe obliczeń).
3. Pobieranie próbek i ponowne sprawdzanie: zdarzenie próbkowania/linie logarytmiczne i uzgadnianie ręczne.
4. Odwzorowanie konturowe: porównanie desek rozdzielczych online i raportów DWH.
5. Zmiana kontroli: przegląd formuły dla schematu/wersji logicznych.
6. Audyt SLA: weryfikacja poprawności zespołów i wyjątków (planowana konserwacja, siła wyższa).
7. Sprawozdanie i ulepszenia: wykaz wykrytych rozbieżności i poprawek wraz z terminami.

6) Definicje i wzory (próbki)

Wskaźnik sukcesu (API):
  • „success = żądania - (5xx + timeouts + circuit_open)”
  • „success _ rate = success/requests”
Opóźnienie p95/p99:
  • SSOT rejestruje pojedynczą definicję okna (walcowanie 5m/1h) i agregacji (HDR/TDigest).
SLO (przykład):
  • „SLO _ availability _ month = (uptime - permissible _ exceptions )/total _ time”
SLA (przykład dla dostawcy):
  • "SLA _ miesiąc = 99. 90% czasu uptime przez okno UTC, z wyłączeniem planowanych okien (T-48 powiadomienie), udowodnionych wypadków u operatorów tranzytowych (dokumenty) ".

7) Jakość danych: kontrole i wpisy

Kontrole jakości:
  • Молнота (kompletność): 'received _ events/ expected_events ≥ 0. 99`.
  • Aktualność: opóźnienie obciążenia ≤ N minut.
  • Wyjątkowość: bez duplikatów kluczy (idempotence-key).
  • spójność-Kwoty/waluta/znaki.
  • Liniowość - liczniki nie są „cofnięte”.
Wpisy dotyczące jakości pomiaru (pomysły):

ALERT MetricsIngestionLagHigh
IF dwh_ingest_lag_minutes > 15 FOR 10m

ALERT EventsCompletenessDrop
IF (events_received / events_expected) < 0. 99 FOR 15m

ALERT DuplicateEventsSpike
IF rate(events_duplicates_total[10m]) > baseline_7d 2

8) Audyt SLA/OLA: metodologia

1. Zbierz kalendarz wyjątków: planowane okna, uzgodniona degradacja, akty sprzedawców.
2. Obliczanie czasu uptime: według jednej strefy czasowej, w oparciu o SSOT.
3. Pojednanie z incydentami: linia czasu, bilety, pośmiertne.
4. Przypisanie: własne awarie, dostawca, tranzyt, DDoS, rutynowa konserwacja.
5. Obwód SLA: doświadczenie użytkownika (E2E) vs jeden specyficzny interfejs API.
6. Sprawozdawczość: sprawozdanie miesięczne/kwartalne: rzeczywiste, odchylenia, rekompensaty (w stosownych przypadkach), środki naprawcze.

9) Kontrola odtwarzalności obliczeń

Wersioning formuły: repozytorium Git ze specyfikacjami SQL/PromQL/dock.
Badania jednostkowe mierników: na danych syntetycznych (przypadki krawędzi: luki, duplikaty, granice daty).
Rodowód danych: od deski rozdzielczej do tabel źródłowych i zdarzeń.
Migawki: zamrażanie danych dla cutoff tak, że ponowne obliczenia są porównywalne.

10) Pobieranie próbek

Dziennie: 10-20 zdarzeń według kluczowych przepływów (depozyt/stawka/CCL) - ręczna weryfikacja śledzenia.
Co tydzień: 1% próbki do porównania „online vs DWH” w kruszywach.
Co miesiąc: zestaw incydentów z efektem SLA - szczegółowa rekonstrukcja.

Przykładowy szablon raportu (krótki):

Date/Window: 2025-10-01.. 2025-10-07
Metric: SLO_api_p99
Source A: Prometheus (rolling 5m)
Source B: DWH snapshot (1h buckets)
Deviation: + 6. 2% (A above B)
Reason: different aggregation windows
Action: align window in both contours to 5m/rolling
Term/Owner: 2025-11-10/squad-observability

11) Kontrola desek rozdzielczych i wpisów

Jednolity słownik mierników: słownik prawy na desce rozdzielczej.
Adnotacje uwolnień/zdarzeń: aby zobaczyć przyczynę odchyleń.
Porównanie przed/po wydaniu: automatyczne panele regresji.
Duplikaty/rozbieżności: identyfikacja "dwóch różnych p99s' - edycja wzorów/okien.
Dostępność panelu: prawa, rezerwa, łącze/kontrola wersji.

12) Zarządzanie zmianą metryczną

Proces RFC - zmiana formuły/okna/źródła - poprzez RFC z oceną oddziaływania SLA/sprawozdawczości

Migracja „expand → migrate → contract”: tymczasowo zachować obie wersje, porównać, a następnie wyłączyć starą.
Komunikaty: z wyprzedzeniem powiadom produkt/firmę o zmianach wartości „zgodnie z nową metodą”.

13) Szczegóły iGaming/fintech

Piki popytu: mierniki muszą wytrzymać ładunki wybuchowe (agregacje nie „przyklejają się”).
Dostawcy: SLA zależy od sprzedawców OLA → przechowywać swoje raporty, statusy incydentów i kwoty.
Koszt: „cost _ per _ 1k _ calls” i „cost of success” to panele obowiązkowe.
Antyfraud/ryzyko: wrażliwość na opóźnienia i „fałszywe pozytywy” metryki.

14) Deski kontrolne (minimalny zestaw)

Metrics Health: kompletność/terminowość/duplicates, ingest-lag, обимка ETL.
Dowody SLO/SLA: obliczone SLO, rzeczywiste SLA, wyjątki, odniesienia do incydentów/aktów.
Online vs DWH Porównaj: Wskaźnik p95/p99/Success, odchylenia i trendy.
Sprzedawca SLA: czas uptime/kwoty/terminy/koszty w podziale na dostawców.
Release Impact: regresja mierników po obliczeniach/uwzględnieniu funkcji.

15) Lista kontrolna (operacyjna)

  • Katalog mierników/SLO/SLA z właścicielami i formułami jest aktualny.
  • SSOT jest zdefiniowany dla każdego raportu/panelu.
  • Badania jednostkowe wzorów są zielone, rurociągi obliczeniowe są udokumentowane.
  • Wpisy dotyczące jakości danych są aktywne (kompletność/linia czasowa/duplikaty).
  • Rozbieżność „online vs DWH” ≤ dopuszczalny próg (np. ≤ 2%).
  • Uzgodnione wyjątki SLA są udokumentowane i załączone do sprawozdania.
  • Pobrano próbki kontrolne i sporządzono świadectwa.
  • Wszystkie zmiany wzoru przeszły RFC i migrację.

16) Przykłady (fragmenty)

PromQL - porównanie przed/po zwolnieniu p99:

api_p99_ms:release:ratio =
(api_latency_p99_ms{release="after"} / api_latency_p99_ms{release="before"})
SQL - Kontrola kompletności zdarzeń:
sql
SELECT event_date,
COUNT() AS received,
SUM(expected_count) AS expected,
COUNT()::decimal / NULLIF(SUM(expected_count),0) AS completeness
FROM events
JOIN expected_events USING (event_date, event_type)
WHERE event_type IN ('deposit','bet_placed','kyc_completed')
AND event_date BETWEEN:from AND:to
GROUP BY 1;
Zasada alertmanagera - rozbieżność konturowa:

ALERT DwhVsOnlineDrift
IF abs(dwh_kpis{metric="api_p99"} - online_kpis{metric="api_p99"}) > 0. 02 online_kpis
FOR 30m
LABELS {severity="warning", team="observability"}

17) Anty-wzory

Dwie różne „te same” formuły metryczne na różnych panelach.
Zmiana metryki bez migracji i powiadomienia - „skoki” w OKR/SLA.
Raporty w lokalnym programie Excel jako „true” (niemożliwe do odtworzenia).
Mieszanie stref czasowych i kalendarzy w obliczeniach SLA.
Wyjątki SLA nie są udokumentowane.
Nie ma wpisów dotyczących jakości pomiarów.

18) Okres zapadalności pomiaru KPI

Szybkość dryfowania w InternecieDWH (cel ≤ 2%).
Metrics Health Uptime.
Formuła Time-to-Fix.
Wskaźnik sporów SLA.
Zasięg SLO/SLA (odsetek ścieżek krytycznych z formalnie opisanym SLO/SLA).

19) Role i obowiązki

Właściciel metryki/usługi: formuła, źródło, deska rozdzielcza, wpisy.
Obserwowalność/SRE: SSOT/platforma, testy formuły, alerty jakości danych.
Dane/BI: DWH, odtwarzalność raportów, rodowód.
Prawnicy/menedżerowie partnerzy: umowy SLA i wyjątki.
Kierownik incydentu: Przypisanie i powiązanie incydentów SLA.

20) Szybki start (30 dni)

Tydzień 1: Wskaźniki inwentaryzacji/SLO/SLA i właściciele; przypisać SSOT.
Tydzień 2: Zawiera alerty jakości danych i panel „Online vs DWH”.
Tydzień 3: przeprowadzić próbki kontrolne, wyrównać okno p95/p99.
Tydzień 4: sformalizować proces RFC dla formuł, przygotować miesięczny raport SLA z załącznikami.

21) FAQ

P: Co to jest SSOT dla SLA?
A: Przechowywanie z powtarzalnymi obliczeniami (DWH) i pełną linią; panele internetowe - do kontroli operacyjnej, a nie do czynności prawnych.

P: Jak radzić sobie z "dwoma p99s'?
Odp.: Naprawić metodę okna/agregacji w katalogu mierników, migrować panele, dodać alert do dryfu.

P: Jak rozważyć planowane prace?
Odp.: Zachować kalendarz wyjątków i automatycznie odliczyć je od SLA zgodnie z zasadami umowy; przechowywać artefakty potwierdzające.

Contact

Skontaktuj się z nami

Napisz do nas w każdej sprawie — pytania, wsparcie, konsultacje.Zawsze jesteśmy gotowi pomóc!

Telegram
@Gamble_GC
Rozpocznij integrację

Email jest wymagany. Telegram lub WhatsApp są opcjonalne.

Twoje imię opcjonalne
Email opcjonalne
Temat opcjonalne
Wiadomość opcjonalne
Telegram opcjonalne
@
Jeśli podasz Telegram — odpowiemy także tam, oprócz emaila.
WhatsApp opcjonalne
Format: kod kraju i numer (np. +48XXXXXXXXX).

Klikając przycisk, wyrażasz zgodę na przetwarzanie swoich danych.