GH GambleHub

Grafana 및 데이터 시각화

(섹션: 기술 및 인프라)

간략한 요약

Grafana는 한 곳에서 메트릭, 로그, 흔적, 비즈니스 지표 및 경고와 같은 모든 관찰 가능성을위한 쇼케이스입니다. iGaming의 경우 p95/p99 모니터링, 지불 변환, Time-to-Wallet, 게임 제공 업체 가용성, 사고의 지리 분포 및 안정적인 vs 카나리아입니다. 성공: 템플릿 (변수), 이해할 수있는 패널, 릴리스 주석, SLO 대시 보드 및 액세스 권한 규율.

1) 연결 아키텍처

데이터 서비스: Prometheus (메트릭), Loki/ELK (로그), Tempo/Jaeger (트레일), ClickHouse/Bigquery/PG (비즈니스 데이터), 게이트웨이를 통한 OTLP.
주요 링크: → 모범에서 → 추적 메트릭 → 관련 로그에서 'trace _ id'.
폴더 및 RBAC: 별도의 폴더 'SRE', 'Payments', 'Risk', 'Games', 'BizOps'; ро찌꺼기 '뷰어/편집기/관리자'... 세분화 된 권한.

2) 대시 보드 디자인: 원칙

1. SLO 카드에서 세부 정보까지 1-2 클릭의 질문에 대한 답변.

2. 각 서비스 + 도메인 카드 (TTW, 예금 변환) 에 대한 RED/USE

3. 안정적인 그리드: 24 열, 큰 KPI 상단, 하단의 세부 사항.
4. 색상 및 임계 값: 최소, SLA/SLO 만 해당.
5. 릴리스 주석: Git Ś, 버전, 릴리스 유형 (카나리아/청록색).

3) 변수 및 템플릿 (템플릿)

변수는 하나의 대시 보드를 많은 것으로 바꿉니다.

예 (Prometheus 쿼리 변수):
  • 이름: '서비스'
  • (PHP 3 = 3.0.6, PHP 4)
  • 다중 선택 + 에는 골재에 편리한 모든 것이 포함됩니다.
캐스케이드 변수:
  • '지역' → 'env' → '서비스' → '인스턴스'.
  • UX 및 '새로 고침: 대시 보드로드' 에 'regex '/' sort' 을 사용하십시오.

4) 패널 및 렌더링 유형

시계열: p50/p95/p99, 오류율, 처리량.
통계/게이지: 대상 KPI (가용성, TTW p95).
바 게이지/테이블: 최고 N 경로/PSP/게임 제공 업체.
지오맵: 국가/ROR 별 열 사고/대기 시간지도.
캔버스: 회로도 스트림 (플레이어 → API → PSP → 은행).
노드 그래프: 서비스 종속성, 오류로 채색.

변환:
  • 필드에 대한 레이블, Outer join, Reduce (min/max/avg), 계산에서 필드 추가 (변환).

5) 쿼리 및 패널의 예

5. 1 p95 대기 시간 (PromQL)

promql histogram_quantile(0. 95,
sum by (le, route) (rate(http_request_duration_seconds_bucket{service="$service",region="$region"}[5m]))
)

5. 2 요청 성공 (SLO 프록시)

promql sum(rate(http_requests_total{service="$service",status=~"2..    3.."}[5m]))
/
sum(rate(http_requests_total{service="$service"}[5m]))

5. 3 지불 변환 (PromQL 집계)

promql sum(rate(payments_success_total{psp=~"$psp",currency=~"$currency"}[15m]))
/
sum(rate(payments_attempt_total{psp=~"$psp",currency=~"$currency"}[15m]))

5. 4 트랙으로의 빠른 점프 (예제)

'Time series' 패널에서 Examplars를 켜십시오 → 포인트를 클릭하면 → Tempo가 'trace _ id' 로 열립니다.

5. 5 Loki trace _ id

logql
{service="$service"}     = "$traceID"

6) 주석과 사건

릴리스 주석: 고갈 중 이벤트의 자동 추가 (버전, 저자, 카나리아 중량).
사건/동결: 사건 시작/종료 표시 및 동결 창 해제.
비즈니스 이벤트: 대규모 캠페인/토너먼트-차트에 표시됩니다.

7) Grafana의 경고

중앙 경보 규칙 (Prometheus/Loki/Cloud 기반).
연락처: PagerDuty/Slack/이메일; 알림 정책 (폴더/태그로 루팅).
다중 창 연소율: 빠르고 느린 예산 로스팅.
침묵: 예정된 창과 중복이있는 창에서.

p95의 예 표현:
promql histogram_quantile(0. 95,
sum by (le, service) (rate(http_request_duration_seconds_bucket{service="$service"}[5m]))
) > 0. 25

8) 코드 제공 (IaC)

Git에 소스/대시 보드/경고를 저장합니다.

데이터. yaml

yaml apiVersion: 1 datasources:
- name: Prometheus type: prometheus access: proxy url: http://prometheus:9090 isDefault: true
- name: Loki type: loki url: http://loki:3100
- name: Tempo type: tempo url: http://tempo:3100

대시 보드. yaml

yaml apiVersion: 1 providers:
- name: sres folder: SRE type: file disableDeletion: false options:
path: /var/lib/grafana/dashboards/sre

grafana. 이니 (조각)

ini
[auth]
disable_login_form = false
[users]
viewers_can_edit = false
[alerting]
enabled = true
[unified_alerting. screenshots]
capture = true

9) 보안 및 액세스

SSO (OIDC/SAML), 그룹 → 역할 → 폴더.
데이터 정보에 대한 권리: 필요한 폴더 만 뷰어 전용으로 읽습니다.
PII 위생: 패널에서 PII로 필드를 당기지 마십시오. 로그 - 필터/마스크.
비밀: 대시 보드에 "일반 텍스트" 가없는 Vault/보안 JSON 필드를 통해서만.

10) 성능 및 비용

무거운 표현에 대한 Prometheus의 기록 규칙.
장기 스토리지의 다운 샘플링/보존 백엔드.
대시 보드 캐시 및 공정한 간격 (어디서나 "1" 이 아님).
변수의 카디널리티 제한 ('user _ id '/' setion _ id' 를 대체하지 마십시오).
재분배: 시끄러운 팀을위한 별도의 인스턴스/폴더.

11) iGaming을위한 전문 대시 보드

지불: 시도/성공/TTW p95, PSP/경로 오류, 지리 편차 맵.
게임/제공자: 스튜디오/게임 별 대기 시간 및 오류율, 시작 변환.
위험/사기: 동작 속도, 장치 버스트/IP, 상관 관계 (표 + 바 게이지).
RG/준수: 세션> 임계 값, 스테이크 성장, 이상 경고.
릴리스 비교: p95/오류/비즈니스 지표에 의하여 안정적인 vs 카나리아.
Infra/USE: 클러스터 및 큐에 의한 활용/포화/오류.

12) JSON 대시 보드의 예 (조각)

json
{
"title": "Payments SLO",
"tags": ["slo","payments"],
"time": {"from":"now-6h","to":"now"},
"panels": [
{
"type":"stat",
"title":"Availability",
"targets":[{"expr":"sum(rate(http_requests_total{service=\"payments-api\",status=~\"2..    3..\"}[5m]))/sum(rate(http_requests_total{service=\"payments-api\"}[5m]))"}],
"thresholds":{"mode":"absolute","steps":[{"color":"red","value":0},{"color":"green","value":0. 999}]}
},
{
"type":"timeseries",
"title":"p95 latency",
"exemplars": {"color":"rgba(31,120,193,0. 6)"},
"targets":[{"expr":"histogram_quantile(0. 95,sum by (le) (rate(http_request_duration_seconds_bucket{service=\"payments-api\"}[5m])))"}]
}
]
}

13) 런북 및 UX 개선

각 경고에는 런북 맵 (동작 명령) 이 있습니다.
관련 대시 보드에 연결합니다 (Payments Infra CN PSP).
드릴 다운: 레이블 → 필터 (지역/psp/경로) 를 클릭하십시오.
변수 기본값: 'env = prod', 'region = eu' -시작 속도를 높입니다.

14) 구현 점검표

1. 데이터 정보 설정: Prometheus/Loki/Tempo/SQL.
2. 폴더와 RBAC를 입력하십시오. 권리 감사.
3. 템플릿 변수 만들기 (지역/env/서비스).
4. SLO 대시 보드 구축 (가용성, p95, 오류율, 오류 예산).
5. 릴리스 주석과 안정적인/카나리아 비교를 추가하십시오.
6. 예제를 사용하고 클릭하여 추적/로그로 이동하십시오.
7. 경고 (다중 창 연소율) 및 응원을 설정합니다.
8. Git에 저장된 코드로 모든 것을 제공하고 검토를 수행하십시오.
9. 성능을 최적화하십시오: 기록 규칙, 간격, 캐시.
10. 비즈니스 대시 보드 (TTW, 결제 변환, GGR 카드) 를 입력하십시오.

15) 안티 패턴

변수와 표준이없는 "Zoo" 일관되지 않은 대시 보드.
기록 규칙이없는 무거운 PromQL 패널 → 느린 UI.
저울이 다른 색상/레전드/Y 축이 풍부합니다.
뷰어 용 패널의 PII 연결이 열렸습니다.
릴리스 주석이 부족합니다-점프가 어디에서 왔는지 명확하지 않습니다.
폴더 구조 대신 하나의 "모노 뷰" 대시 보드.

요약

Grafana는이 기술이 제품을 만나는 인터페이스입니다. 메트릭, 로그 및 트랙은 비즈니스 사진에 연결됩니다. 템플릿, 올바른 패널, 주석 및 경고는 데이터를 빠른 진단, 예측 가능한 릴리스 및 관리 가능한 관찰 비용과 같은 솔루션으로 전환합니다.

Contact

문의하기

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

Telegram
@Gamble_GC
통합 시작

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

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

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