GH GambleHub

모니터링 및 로깅

1) iGaming에서 중요한 이유

실시간으로 돈: 예금 수락, 즉시 지불, 베팅 및 상금 계산, 토너먼트-모든 것이 지연 및 실패에 민감합니다.
규제 및 감사: 조치의 전체 추적 가능성이 필요합니다 (KYC/AML, 지불, 책임있는 플레이 제한).
복잡한 분산 아키텍처: API 게이트웨이, 결제 오케스트레이션, EDA/Kafka, 공급자 서비스, 모바일 클라이언트, 전선, BI 버스.
목표는 MTTD/MTTR을 줄이고 금 신호에 SLO를 유지하고 입사 속도를 제공하는 것입니다.

2) 관찰 가능성의 기본 개념

로그: 조사 및 감사에 적합한 세부 이벤트 (구조화 된 JSON).
지표: SLO/경고에 적합한 시간 집계 (TSDB).
추적: 서비스/중개인/데이터베이스를 통한 요청 체인 (추적/스팬) 원인 및 결과 체인.
이벤트: 도메인 이벤트 (BetPlaced, DepositApproved) -비즈니스 지표와 기술 사이의 다리.

3) iGaming을위한 "황금 신호" 및 SLI/SLO

대기 시간: 중요 흐름에 대한 P95/P99 (인증, 예금, 속도, 세션 시작, 스핀).
트래픽: API에 의한 RPS, 결제에 의한 TPS, 이벤트 별 EPS.
오류: 5xx/4xx 점유율, 감소율, 고장난, 공급자 오류.
포화: CPU, 메모리, IO, Kafka 지연, DB 연결, 스레드 풀.

SLO (결제 게이트웨이) 예:
  • SLI: '1- (지불 실패/총 지불)'
  • SLO: 99. 30 일 동안 성공적인 카드 승인의 7% (오류 예산 0. 3%).

4) 수집 및 처리 아키텍처

1. 주입: 에이전트 (OTel Collector/Fluent Bit), 응용 프로그램의 SDK, RUM/synthetics.
2. 라우팅: 브로커/원격 측정 버스 (OTLP/SHT/GRPC), 필터 및 PII 마스킹.

3. 금고:
  • 측정 항목: TSDB (집계, 다운 샘플링).
  • 로그: 핫 (인덱스 )/워름 (인덱스가 적음 )/콜드 (오브젝트 스토리지, WORM).
  • 트레일: 유지 및 테일 샘플링이있는 시간 색인 스토리지.
  • 4. 분석/경고: 규칙 (PromQL/LogQL/SQL), 트랙 및 릴리스와의 상관 관계.
  • 5. 대시 보드: 기술 + 비즈니스 유형 (결제, RNG/제공 업체, 토너먼트 엔진).

5) 로그 표준 (JSON) 및 이벤트 분류

엄격한 JSON 로깅, 단일 키 및 레벨이 권장됩니다.

차이나 프로그램: 'DEBUG

지금 당신은 이렇게 말합니다. ',' 지불. ',' 게임 플레이. ',' 위험. ',' psp. ',' kyc. ',' rg. ',' 책임있는 게임), 'ops.'.

JSON 이벤트의 예 (AUDIT/PII-safe):
json
{
"ts": "2025-11-04T19:45:31. 842Z",
"lvl": "AUDIT",
"event_type": "payment. deposit_approved",
"correlation_id": "c-7d2c1f0b",
"trace_id": "2d6a9c0e4c0b1f72",
"span_id": "9f3a81d2a1c3b764",
"request_id": "r-8f12de9e",
"tenant": "brand_eu",
"psp": "acq_xyz",
"user_id_hash": "u:sha256:1e63…",
"device_id": "d-3c8f…",
"ip_trunc": "203. 0. 113. 0/24",
"amount_minor": 5000,
"currency": "EUR",
"result": "approved",
"latency_ms": 312,
"tags": ["pci_safe", "kyc_passed", "low_risk"],
"extra": {
"bin": "411111",
"method": "card",
"region": "EU",
"ab_test": "checkout_v2"
}
}
PII/PCI 보안 규칙:
  • PAN/BIN (정책에 의해 유효한 필드 만 저장), 이메일/전화-해시/토큰을 마스크합니다.
  • IP는/24, GeoIP 저장소로 별도로 잘립니다.
  • 소독없이 사용자 입력을 위해 '추가' 의 무료 텍스트를 금지합니다.

6) 상관 관계: trace _ id, correlation _ id, demempotency _ key

'trace _ id' (OTel), 'span _ id', 'correlation _ id' (비즈니스 프로세스의 종단 간), 'deidempotency _ key' (결제 요청) 를 각 로그 및 메트릭에 추가합니다.
슬라이스를 만들기 위해 수하물 (테넌트/브랜드, 시장, A/B 옵션) 을 옮깁니다.

7) 지표: 기술 및 비즈니스

기술: RPS, p95 대기 시간, 오류율, 채도, GC, 풀 사용량, Kafka 소비자 지연.
비즈니스: CR registratsii → depozit, 성공적인 승인, 지불 취소, NGR/GGR, ARPPU, RTP 이상, KYC 단계에서의 하차, 책임 한도 공유.

PromQL의 예 (오류율 API):
promql sum(rate(http_requests_total{status=~"5.."}[5m]))
/
sum(rate(http_requests_total[5m]))

8) 추적 및 OpenTelemetry

우리는 게이트웨이, 결제 오케 스트레이터, 게임 코어, 알림, KYC/AML, 공급자와의 통합을 도구화합니다.
오류/잠복 스팬 및 지불에 대한 총 흐름 + 테일 샘플링 (상승) 용 헤드 샘플링.
맥락 전파: 'traceparent '/' tracestate', Kafka 헤더, gRPC 메타 데이터.
주석은 'BetPlaced', 'WithinRequested' 와 같은 도메인 이벤트로 구성됩니다.

9) 소음없이 경고

다단계 임계 값 (경고/임계 값), 플래핑 억제, 중복 제거, 시간 슬롯.
상관 관계: "5xx 성장" + "Kafka lag" + "p95 대기 시간 PSP" → 하나의 사건을 연관시킵니다.
SLO 기반 경고: 지출 오류 예산-에스컬레이션.
GitOps (Alerts-as-Code), 검토 및 규칙 테스트.

규칙 (Prometheus) 의 예:
yaml groups:
- name: payments rules:
- alert: PaymentErrorSpike expr: (sum(rate(payment_errors_total[5m])) / sum(rate(payment_attempts_total[5m]))) > 0. 02 for: 10m labels: { severity: "critical", team: "payments" }
annotations:
summary: "Payment errors> 2% per 10m"
runbook: "runbooks/payments/error-spike. md"

10) 로그 검색 (예: LogQL)

logql
{app="psp-orchestrator", level=~"ERROR    FATAL"}
= "decline"
json amount_minor > 10000 region="EU"

목표는 신속하게 소음을 제거하고 대상 지역의 "고가의" 실패를 강조하는 것입니다.

11) 대시 보드: 필수 사항

지불 건강: PSP의 성공/실패, 방법에 의한 대기 시간, 지역지도, SLA 제공 업체.
게임 코어: 공급자 별 RPS, p95 스핀, 오류비 SDK, 슬롯 별 RTP 이상.
플레이어 여행: registratsiya → KUS → depozit → igra → vyvod.
Infra: Kafka 지연, DB 연결, 캐시 적중률, Kubernetes 클러스터 (포드/노드 그리드).

12) 보관, 보존 및 비용 (FinOps)

제어중인 카디널리티: 변경 가능한 레이블 (user _ id) 이있는 메트릭을 피하십시오.
리테이션: 핫 메트릭 30-90 일, 최대 13 개월 다운 샘플링; 7-14 일, 따뜻한 30-90 일, 추운 1-3 년 (규정을 고려하여) 기록합니다.
감사 로그의 WORM/불변성, Object Lock.
압축/분할 및 ILM 정책; 감사/PII 안전에 대한 별도의 지수.
INFO/DEBUG의 샘플링 로그; ERROR/AUDIT-완료.

13) 안전 및 준수

PII/PCI: 토큰 화, 해싱, 마스킹; 데이터 최소화.
RBAC/ABAC: 역할 별 차양 분리 로그/트랙에 대한 액세스.
비밀과 키: 자격 증명/토큰을 기록하지 마십시오. CI의 비밀 탐지기.
감사 추적: 관리자 패널 항목, 한도/결제 변경, 수동 잔액 조정-AUDIT 지수에만 해당됩니다.
법적 보류: 조사에서 보류를 동결시키는 메커니즘.

14) 원격 측정 데이터 품질

로그/이벤트에 대한 스키마 레지스트리 (버전, 호환성).
필드의 단일 명칭 (snake _ case, 측정 단위).
주사시 검증 (더러운 사건의 방울, 결혼 지표).
"로그 폭풍" 에 대한 역압 및 보호.

15) SRE 프로세스, 온라인 통화 및 런북

통화 매트릭스 및 에스컬레이션; 조용한 시간과 회전.
런북은 경고 (진단 단계, SQL/LogQL 레시피, 성능 저하를위한 phicheflags) 와 관련이 있습니다.
벌금이없는 사후, 소유자가있는 행동 항목 및 마감일.
팀 지표: MTTD/MTTR, 시끄러운 경고 비율, Runbuk 적용 범위.

16) RUM 및 합성

RUM: WebVitals (LCP, CLS, INP), 전면 오류, 장치 지문, 지역/공급자.
합성: 다른 지역의 시나리오 "registratsiya → depozit → spin → vyvod"; 내부 경로의 개인 위치 (관리/백 오피스).

17) 릴리스, 실험 및 phicheflags의 관행

트랙을 릴리스 버전 (커밋/인공물) 과 연결합니다.
수하물 → 대시 보드의 A/B 태그 "SLI 실험 효과".
Canary/Blue-Green: 카나리아를위한 별도의 패널, 오류 예산 연소율.

18) 변칙적 탐지 및 사기 방지 신호

새 카드의 감소율/요금 회수 위험/서지에 대한 통계적 트리거 (계절성 인식).
상관 관계: "실패한 예금의 성장 + PSP 어댑터의 새로운 릴리스".
거의 실시간 반응에 대한 스트리밍 규칙 (Kafka → Flink).

19) 구현 로드맵 (단계별)

0 단계-기초: JSON 로그, 통합 상관 필드, 기본 서비스 지표, 일반 대시 보드, 첫 번째 경고.
1 단계 - 추적: OTel 계측, 헤드 + 테일 샘플링, 로그 연결.
2 단계-비즈니스 SLI/SLO: 결제/출력/게임 메트릭, SLO 경고, 오류 예산 프로세스.
3 단계-성숙도: 코드 경고, ILM, 별도의 보류, 이상 감지, 서비스 당 runbuki, CI/CD의 SRE 관행.

20) 검토 점검표

  • JSON 만 로그, 단일 키, PII 마스킹.
  • 각 이벤트에서 'trace _ id', 'span _ id', 'correlation _ id', '세입자'.
  • 메트릭스는 금 신호 및 비즈니스 흐름을 다룹니다.
  • SLO가 설명되어 있으며, 연소율에 대한 오류 예산 및 경고가 있습니다.
  • 결제 오류 및 높은 대기 시간에 테일 샘플링이 활성화됩니다.
  • ILM 및 WORM은 감사 로그를 위해 구성됩니다.
  • 원격 측정, 액세스 감사를위한 RBAC.
  • 결제/게임 코어/플레이어 여행/인프라 대시 보드.
  • 런북은 모든 중요한 경고와 관련이 있습니다.
  • 소유자와의 백 로그에서 사후 및 행동 항목.

부록 A: OpenTelemetry 속성 (권장 사항)

'서비스. 이름 ',' 서비스. 버전 '', 배포 환경 '

'구름. 지역 ',' k8. 포드. 이름 ',' k8s. 컨테이너. 이름 '

'테넌트', '브랜드', '마켓', 'ab _ test', 'user _ segment'

'지불. 방법 ',' psp ',' 게임. 제공자 ',' 게임. 아이 '

부록 B: SLO 용 메트릭스의 예

'psp _ latency _ p99', 'report _ ttw _ p95' (시간 대 지갑), 'psp _ latency _ p99'

'game _ spin _ latency _ p95', 'provider _ order _ rate', 'kafka _ saver _ lag'

(PHP 3 = 3.0.6, PHP 4)

부록 C: 빠른 조사 요리법

"'결제 _ 오류 _ rate' 성장" → PSP/지역/방법으로 비교하고 꼬리 흔적을 확인하고 어댑터 릴리스를 참조하십시오.
"p99 spins TP" trace →, front → geytvey → provayder 체크 제공 업체/채널, 스레드 풀 제한, 네트워크 재조정.
"Kafka lag q" → 건강 소비자, 복고풍 생산자, 역압, 느린 싱크/DB.

💡 이러한 관행을 준수함으로써 플랫폼은 엔지니어링 도구, 비즈니스 레이더 및 규정 준수 보증인으로서 두 배가되는 강력하고 검증 가능하며 비용 효율적인 관찰 시스템을 얻습니다.
Contact

문의하기

질문이나 지원이 필요하시면 언제든지 연락하십시오.우리는 항상 도울 준비가 되어 있습니다!

Telegram
@Gamble_GC
통합 시작

Email — 필수. Telegram 또는 WhatsApp — 선택 사항.

이름 선택 사항
Email 선택 사항
제목 선택 사항
메시지 선택 사항
Telegram 선택 사항
@
Telegram을 입력하시면 Email과 함께 Telegram에서도 답변드립니다.
WhatsApp 선택 사항
형식: +국가 코드 + 번호 (예: +82XXXXXXXXX).

버튼을 클릭하면 데이터 처리에 동의하는 것으로 간주됩니다.