GH GambleHub

Grafana և տվյալների տեսողական

(Բաժին ՝ Տեխնոլոգիաներ և ենթակառուցվածքներ)

Live ռեզյումե

Grafana-ը ամբողջ դիտարկման վիտրինն է 'մետրերը, լույսերը, հետքերը, բիզնես ցուցանիշները և ալերտները նույն տեղում։ iGaming-ի համար սա ՝ www.p95/p99, վճարումների փոխարկումը, Time-to-Wallet-ը, խաղերի պրովայդերների հասանելիությունը, պարամետրերի գեո բաշխումը և օրինագծերի համեմատությունը (stable vs canary)։ Հաջողությունը 'ձևանմուշներ (105), հասկանալի վահանակներ, օրինագծեր, SLO-dashbords և հասանելիության իրավունքների կարգապահություն։

1) Միացման ճարտարապետությունը

Diasources: Prometheus (metrics), Loki/ELK (Loges), Tempo/Jaeger (Treiss), ClickHouse/BigQuery/PG (բիզնես տվյալները), OTLP-ը Gateway-ի միջոցով։

Հիմնական կապերը 'մետրից wwww.exemplar www.trace-ը, որոնք կապված են «trace _ id» -ի հետ։

Թղթապանակները և RBAC-ը '«MSE», «Payments», «Risk», «Games», «BizOps»։ роли `Viewer/Editor/Admin` и granular permissions.

2) Dashbords դիզայնը ՝ սկզբունքները

1. Պատասխանը 1-2 տեսահոլովակի համար 'SLO քարտերից մինչև մանրամասները։

2. RED/USE-ը յուրաքանչյուր ծառայության համար + հիբրիդային քարտեր (TTW, դեպոզիտների փոխարկումը)։

3. Կայուն ցանցը '24-հսկայական, մեծ KPI վերևում, ներքևի մասերը։

4. Գույներն ու շեմերը 'առնվազն SLA/SLO-ով։

5. Օրինագծերի նույնականացումները ՝ Git SHA, տարբերակը, թողարկման տեսակը (canary/blue-green)։

3) Մոսկվան և թեմպլեյտները (templating)

Մոսկվան մեկ դաշնամուր է վերածում շատ։

Օրինակ (Prometheus query-variable)

Name: `service`

Query: `label_values(up, service)`

Multi-international + include all-ը հարմար է ագրեգատների համար։

Կասկադային կոմպոզիցիաներ

`region` → `env` → `service` → `instance`.

Օգտագործեք «regex »/« soft» UX-ի և «refresh: On dashboard load» -ի համար։

4) Վահանակներ և տեսակներ

Time series: p50/p95/p99, error-rate, throughput.

Stat/Gauge: www.KPI (availability, TTW p95)։

Bar gauge/Table: Առաջին N երթուղիները/PSA/խաղերի պրովայդերներ։

Geomap: Ինտեգրման/լատենտության ջերմային քարտեզներ երկրներով/ROR-ով։

Canvas: սխեմատիկ հոսքեր (Player no API)։

Node graph 'ծառայությունների կախվածությունը, սխալների գույնը։

Փոխակերպումներ

Labels to fields, Meder Join (metric և բիզնես աղյուսակներ), Reduce (mix/max/avg), Add field from calculation (փոխադարձություն)։

5) Հարցումների և առաջարկների օրինակներ

5. 1 p95 latency (PromQL)

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

5. 2 Հարցումների հաջողությունը (SLO proxy)

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 Արագ ցատկ ուղու վրա (exemplars)

«Time Time series» վահանակում ներառեք Exemplars Texplars Plack Click Power-ի կետով բացվում է Tempo-ը '«trace _ id» -ից։

5. 5 Trace _ id (Loki)

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

6) Ծանոթագրություններ և իրադարձություններ

Release annot.ru: Իրադարձության ավելացումը Deple-ում (տարբերակը, հեղինակը, կանարական քաշը)։

Incident/Freeze: Windows-ի սկզբի/վերջի նշանները և ածխաջրածինների սառեցման պատուհանները։

Բիզնես իրադարձություններ 'մեծ քարոզարշավներ/մրցույթներ, տեղադրեք գծապատկերներում։

7) Ալերտան Գրաֆանայում

Alporrules-ը կենտրոնացված է (Prometheus/Loki/Cloud)։

Contact points: PagerDuty/Slack/Email; Notif.ru policies (ruting tem)։

Multi-www.burn-rate: Արագ և դանդաղ բյուջեի կյանքը։

Silences: Պլանավորված պատուհանների և կրկնօրինակների ժամանակ։

P95 արտահայտման օրինակ

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

8) Պրովիզինինգը որպես կոդ (IaC)

Պահպանեք աղբյուրները/dashbords/alerts Git-ում։

datasource. 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

dashboard. yaml

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

grafana. ini (հատված)

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

9) Անվտանգություն և հասանելիություն

SSO (OIDC/SAML), խմբեր, որոնք համապատասխանում են ռուսական թղթապանակի դերին։

Winasouurces-ի իրավունքները 'միայն անհրաժեշտ հայրիկներին, read-only Viewer-ի համար։

PII-հիգիենան 'մի քաշեք PII-ի դաշտերը վահանակում։ լոգանքների համար ֆիլտրել/դիմակավորել։

Գաղտնիքները 'միայն Vox/secure JSON fields-ի միջոցով, առանց «պլեյն-տեքստի»։

10) Արտադրողականությունը և արժեքը

Recording rules-ում Prometheus-ում ծանր արտահայտությունների համար։

Downsampling/Retention-ը երկար պահպանման բեքենդերում։

Քաշ Դաշբորդներ և ազնիվ ընդմիջումներ (ոչ թե «1s» ամենուր)։

Փոփոխականների կարդինալության սահմանափակումը (մի փոխարինեք «user _ id »/« session _ id»)։

Վերաբաշխումը 'առանձին ինստանսներ/ֆոլդերներ աղմկոտ թիմերի համար։

11) Մասնագիտացված dashbords iGaming-ի համար

Payments: փորձեր/հաջողություններ/TTW p95, սխալ PMS/երթուղով, geo քարտեզի վրա։

Games/Providers: latency և error-rate ստուդիաներով/խաղերով, գործարկման հակադարձումը։

Risk/Fraud: գործողության արագություն, սարքերի/IP, հարաբերակցություններ (35+ բար)։

RG/Compli.ru: նստաշրջաններ> շեմն, սթեյքերի աճը, անոմալիաների ալերտները։

Releault Compare: կայուն vs canareced p95/error/բիզնես մետրերով։

Infra/USE: Utilization/Saturation/Errors կլաստերների և հերթերի վրա։

12) JSON-dashbord (հատված)

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) Runbooks և UX բարելավումներ

Յուրաքանչյուր ալբերտ Runbook URL-ն է (գործողությունների հրահանգը)։

Links-ը կապված dashbords-ի վրա (Payments Ninfra no PSA)։

Medilldown: Clicks եվրոպական ֆիլտրերի պիտակների վրա (region/pox/rome)։

Variables no aula.ru: «env = no», «region = eu» - արագացնում է սկիզբը։

14) Ներդրման չեկի ցուցակ

1. Patte intasources: Prometheus/Loki/Tempo/SQL։

2. Մուտքագրեք թղթապանակները և RBAC; իրավունքների աուդիտ։

3. Ստեղծեք ձևանմուշային բջիջներ (region/env/2019)։

4. Կառուցեք SLO-dashbords (availability, p95, error-rate, սխալների բյուջե)։

5. Ավելացրեք օրինագծերի ծանոթությունները և համեմատությունը stable/canary-ի հետ։

6. Միացրեք exemplars-ը և անցումը դեպի ուղիներ/լոգարաններ։

7. Patte alerta (multi-www.burn-rate) և ռուտինգը։

8. Օգտագործեք ամեն ինչ որպես կոդ, պահեք Git-ում, նախանձեք։

9. Օպտիմիզացրեք արտադրողականությունը 'recording rules, ընդմիջումներ, քեշ։

10. Մուտքագրեք բիզնես դաշնամուրները (TTW, վճարման փոխակերպումը, GGR քարտերը)։

15) Անտիպատերնի

«Կենդանաբանական այգին» չհամաձայնեցված dashbords առանց փոփոխականների և ստանդարտների։

Ծանր PromQL-ի վահանակները առանց recording rules-ի պատրաստված են դանդաղ UI-ով։

Գույների/լեգենդների/առանցքային-Y-ի ավելցուկը տարբեր մասերով։

PII միացումը Viewer-ի համար տեղադրված վահանակում։

Ածխաջրածինների նույնականացման բացակայությունը պարզ չէ, թե որտեղից են ցատկում։

Մեկ «մոնովոյի» դաշբորդը ֆոլդերի կառուցվածքի փոխարեն։

Արդյունքները

Grafana-ը ինտերֆեյս է, որտեղ տեխնոլոգիան հանդիպում է ապրանքի հետ 'մետրիկներ, լոգներ և հետքեր կապված են բիզնեսի նկարների հետ։ Ձևանմուշները, ճիշտ վահանակները, նույնականացումները և ալերտները դարձնում են տվյալները լուծումների մեջ 'արագ ախտորոշում, կանխատեսելի օրինագծեր և դիտարկման վերահսկվող արժեքը։

Contact

Կապ հաստատեք մեզ հետ

Կապ հաստատեք մեզ հետ ցանկացած հարցի կամ աջակցության համար։Մենք միշտ պատրաստ ենք օգնել։

Telegram
@Gamble_GC
Սկսել ինտեգրացիան

Email-ը՝ պարտադիր է։ Telegram կամ WhatsApp — ըստ ցանկության։

Ձեր անունը ըստ ցանկության
Email ըստ ցանկության
Թեմա ըստ ցանկության
Նամակի բովանդակություն ըստ ցանկության
Telegram ըստ ցանկության
@
Եթե նշեք Telegram — մենք կպատասխանենք նաև այնտեղ՝ Email-ի дополнение-ով։
WhatsApp ըստ ցանկության
Ձևաչափ՝ երկրի կոդ և համար (օրինակ՝ +374XXXXXXXXX)։

Սեղմելով կոճակը՝ դուք համաձայնում եք տվյալների մշակման հետ։