API և ենթակառուցվածքի մոնիտորինգի գործիքներ
1) Սկզբունքներ ՝ նպատակներից մինչև գործիքներ
SLO-first 'ընտրեք և տեղադրեք գործիքները ապրանքային նպատակների համար (լոգոն, դեպոզիտ, դրույքաչափ), ոչ հակառակը։
Բաց standards: OpenTelemetry (treiss/metrics/loga), Prometheus exposportat, Loki JSON-loga։
Մեկ կոնտեքստը '«trace _ id »/« բանաձև _ id» լոգարաններում և մետրերում; ոսպնյակներ «dashbord no trace trace log»։
Cost-a.ru: կարդինալությունը, TTL logs, sampling treiss - նախապես։
2) Metriki 'հավաքում, պահպանում, տեսողականություն
Сбор: Prometheus / Agent-режим (VictoriaMetrics Agent, Grafana Agent, OpenTelemetry Collector).
Մոսկվա (TSDB): Prometheus (single), Thanos/Distex/Mimir (հորիզոնական մեծացում), Victorium Metrics (CPU/RAM)։
Տեսողական 'Grafana որպես «ապակե վահանակ»։
Ինչ չափել API (RED) և ենթակառուցվածքի համար (USE)
RED: `rate(requests)`, `error_ratio`, `latency p95/p99` по `route`, `method`, `provider`.
USE: CPU/Mem, file descriptors, connection pools, queue lag, GC pauses.
Օգտակար ակցիոններ
k8s: kube-state-metrics, node-exporter, cAdvisor, ingress/gateway exporters.
БД/кэши: postgres_exporter, mysql_exporter, redis_exporter, kafka_exporter, rabbitmq_exporter.
@-@ մաշը 'Envoy metr.ru, istio/Linkerd dashboards։
PSP/внешние: custom exporters (webhook success, PSP success ratio, callback latency).
PromQL-ի օրինակները (էսքիզներ)
promql
Դեպոզիտների հաջողությունը (SLI)
sum(rate(ig_payments_requests_total{route="/payments/deposit",status=~"2.."}[5m]))
/
sum(rate(ig_payments_requests_total{route="/payments/deposit"}[5m]))
p95 latency API histogram_quantile(0. 95, sum(rate(http_request_duration_seconds_bucket[5m])) by (le, route))
Միացման փամփուշտի հագեցումը BD db _ connections _ in _ use/db _ connections _ max3) Լոգա 'որոնում, հարաբերակցություն, անփոփոխ
Սթեք 'OpenSearch/Elasticsearch + Beats/Vector/Fluent Bit կամ Grafana Loki (ավելի էժան է պահվածքի վրա, «log-strem»)։
Ձևաչափը 'JSON' ստանդարտ դաշտերով 'ts, level, env, trace _ id, user _ pid, roult, status, latency _ 108։
Պրակտիկա 'PII, WORM բակտերիաներ ռուսական, TTL/ILM քաղաքականության համար, «env/region/brand» կուսակցության։
4) Հետադարձ հայացք. Որտե՞ ղ են կորցնում միլիոնավոր սեկունդներ
Стек: OpenTelemetry SDK/Collector → Jaeger/Tempo/Honeycomb/New Relic Traces.
Սերմերի քաղաքականությունը 'սխալների 100 տոկոսը, հարմարեցնելով «դանդաղ» հարցումների համար, 1-5 տոկոսը հաջողակ։
Теги iGaming: `provider`, `psp`, `risk_decision`, `bonus_id`, `market`, `ws_table_id`.
Դեբագի արագ բաղադրատոմսը 'կարմիր գրաֆիկից SLO-ն բացատրում է խնդրահարույց պարամետրերի թրեյսը PMS/խաղային պրովայդերի վրա։
5) APM պլատֆորմներ. Երբ «ամեն ինչ-մեկ»
Առևտրային լուծումները (Dradog, New Relic, Coratrace, Grafana Cloud) փակում են APM, Logs, treiss, սինթեզիկա, RUM։
Պլյուսներ 'իրականացման արագություն, հարաբերակցություն «արկղից»։ Մինուսներ 'արժեք/գենդոր-լոկ։- Հիբրիդ 'OFC-ի միջուկը (Prometheus + Grafana + Tempo + Loki), «dorisove» սինթետիկ/ալերտինգը կրիտիկական ֆլոուի առևտրային մոդուլներով։
6) Սինթետիկ և RUM '«դրսում» և «խաղացողի աչքերով»
Синтетика: Checkly, Grafana Synthetic Monitoring, k6 Cloud, Uptrends, Pingdom, Catchpoint, ThousandEyes.
Սկրիպտներ ՝ լոգինը (sandbox) բացատրում է խաղի մեկնարկը webhuk-ի ստուգման համար։- Գեո 'EU/LatAm/MMS/APAC, բջջային ցանցեր, ASN-միկս։
- RUM: Web-MSK (TTFB/LCP/CLS), բջջային SDK; երկրի/ցանցի/կառուցվածքի հատվածներ։
7) Kubernetes-ի մոնիտորինգի մակերեսները
Control plane: etcd, API-server (apiserver_request_total, latency), scheduler/controllermanager.
Data plane: kubelet, CNI, ingress/gateway; `PodDisruptionBudget` и эвикшены.
Autoscale: HPA/MSA/Cluster Autoscaler-ը և իրադարձությունները։ warm-puls.
Ցանցային քաղաքականությունները 'drops/deny events, SYLatency։
8) Տվյալների հիմքերը, հերթերը, քեշները
POSTgRES/MySQL 'վերարտադրության լամպ, deadlocks, bloat, WAL, www.kpoint duration, թայմաուտներ։
Kafka/RabbitMQ: consumer lag, rebalances, queue depth, redeliveries.
Redis: evictions, blocked clients, latency percentiles, lag։
PITR/bakaps 'backup օպերատորների խնդիրները + dashbord «ժամանակ մինչև վերականգնումը»։
9) Ցանցը, CDN, WAF, խաղերի պրովայդերներ և PBS։
CDN/Edge: hit-ratio, TTFB տարածաշրջաններում, shield hit, «պրոմախի փոթորիկ»։
WAF/bot մենեջեր ՝ wwww.chlengey/բլոկներ, ASN/երկիր, FPR լոգարանում/դեպոզիտում։- Game providers: Սեղանի/արցունքների գործարկման ժամանակը, ստուդիաների մերժումը/թայմաուտները։
- PBS: success ratio/latency մեթոդով/երկրով/BIN, 3DS/AVS սխալները, webhooks sucess & winday։
10) Ալերտինգը և հերթապահությունը
Ռոուտինգը ՝ Alertmanager PagerDuty/Opsgenie/Slack։- Կանոնները ՝ ախտանիշներ (SLO) + պատճառված (ռեսուրսներ)։
- Հակաշում ՝ խմբավորում, շղթայական ալերտների ճնշում, լռության պատուհաններ։
- SLO-gates CD: Avto-sisRun (Argo Rollouts/Flagger AnalysisRun) խախտումների ժամանակ։
Ալերտների օրինակները (պարզեցված)
`login_success_ratio < 99. 9% for 10m`
`p95 /payments/deposit > 0. 4s for 10m`
`db_connections_saturation > 0. 85 for 5m`
`kafka_consumer_lag > 30s`
`cdn_hit_ratio drop > 15% in 10m (per region)`
11) Dashbords, որոնք իսկապես օգնում են
Ֆլոու դեպոզիտ 'ձագար, p95/p99, սխալներ PMS/BIN/երկրներին, վեբհուկի ձերբակալումը։
Խաղեր/WS: Միացություններ, RTT, resend/reconnae, պրովայդերների սխալներ։
API 'RED երթուղիներով, satur.ru, top slow endpoin.ru-ով։- DR վահանակ 'replanslag, WAL shipping, wwinthetic login/deposit DR-տարածաշրջանից։
- Տե՛ ս ՝ WAF, bot score, 401/403 անոմալիաներ, որոնք ստորագրվել են Webhuks-ի կողմից։
12) Հեռաչափության արժեքի կառավարումը
Կարդինալությունը 'մի միացրեք «user _ id» -ը պիտակների մեջ, սահմանները' «rope» և «provider»։- Downsampling և retention դասարանները (տաք 7-14 օր, տաք 30-90, սառը արխիվը)։
- Լոգա 'իրադարձությունների ցատկ, միացրեք սերմնացանը/դեդուպը։ պահեք stacktrace առանձին։
- Թրեյսներ ՝ դինամիկ sampling «թանկ» ճանապարհներով (վճարումներ/եզրակացություններ)։
13) Անվտանգությունն ու գաղտնիությունը մոնիտորինգում
MTSA գործակալներից մինչև կոլեկցիոներներ; at-rest կոդավորումը։- «User _ pid» կեղծանունացումը, e-mail/հեռախոսի/փաստաթղթերի արգելքը լոգարաններում։
- RBAC/MFA, WORM մրցույթի համար; DPA-ը մոնիտորինգի երրորդ կողմի պրովայդերների հետ։
14) CI/CD և ավտոտկատի ինտեգրումը
SLI-ի էքսպոզիան որպես prom-մետրիկ CD-վերլուծությունների համար։- Release labels («version», «rollout _ step») մետրերում/logs/tress։
- Ավտոմատ canarech գեյտերը 'deplay կշարունակվի միայն կանաչ SLO-ով։
15) Արագ սկսելը (հանրաքվե)
Հավաքումը/տրանսպորտը 'OTEL Collector + Prometheus/VM Agent + Fluent Bit.
Պահեստ ՝ Victor.ru Metr.ru/Thanos (metrics), Loki/OpenSearch (Loges), Tempo/Jaeger (Treeger)։- Տեսողական ՝ Grafana + պատրաստ dashbords k8s/Envoy/Postgres։
- Սինթետիկ & RUM: Diskly/k6 + Grafana RUM (կամ առևտրային անալոգը)։
- Alerting: Alertmanager 24PagerDuty/Slack; runbooks հղումների մեջ։
16) Chek-Show-( 2019-ready)
- Որոշվում են SLO/SLI լոգոն/դեպոզիտ/եզրակացության համար։
- Metriki RED/USE + բիզնես SLI; պիտակների միասնական ուռուցքաբանություն։
- JSON լոգները '«trace _ id», PII, WORM դիմակավորում։
- OpenTelemetry end-to-end; սխալների սերմնացումը 100% է։
- Սինթեզիկան հիմնական տարածաշրջաններից + RUM-ն վաճառում է։
- Dashbords «ավանդի ֆլո», «WS», «API առողջություն», «DR»։
- Alerting: SLO ախտանիշներ + ռեսուրսային պատճառներ; Անտիշումը։
- SLO գեյտները միացված են CD-ին; ավտոտկատ։
- Արժեքի պլանը 'ռենտենշեն/սերմնացում/կարդինալություն։
- DPA/անվտանգություն ՝ mTSA, RBAC, լոգարանների գաղտնիությունը։
Ռեզյումե
Ուժեղ կոմպոզիցիան ոչ թե "գեղեցիկ գծապատկերների" հավաքածու է, այլ կապի համակարգ 'RED/USE, Loges' trace _ id ", OpenTelemetry-ի հետքեր, սինթեզիկա և RUM, գումարած dashbords, alerting և SLO գեյտեր, որոնք ներկառուցված են ձեր CI/CD։ Նստեք բաց ստանդարտների շուրջ, վերահսկեք հեռաչափության արժեքը և ստանդարտացրեք պիտակների ուռուցքաբանությունը, ապա API-ի և ենթակառուցվածքի հետ կապված ցանկացած խնդիր նախապես տեսանելի կլինի և ստուգեք մինչև խաղացողները։
