अवलोकन और टेलीमेट्री
(धारा: प्रौद्योगिकी और बुनियादी ढांचा)
संक्षिप्त सारांश
अवलोकन करने की क्षमता "यह इस तरह क्यों काम करता है?" नए बिल्ड की रिहाई के बिना। आईगेमिंग में, यह महत्वपूर्ण है: पीक टूर्नामेंट, भुगतान चोटियां, बहु-क्षेत्रीयता और जिम्मेदार जुआ/पीआईआई आवश्यकताएं। आधार - एसएलओ अनुबंधों, शोर प्रतिरोधी अलर्ट और लागत नियंत्रण के साथ सामान्य पहचानकर्ताओं और मानकों (ओपनटेलीमेट्री) द्वारा एकजुट मैट्रिक्स, लॉग, निशान।
1) अवलोकन ढांचा: इसमें क्या शामिल है
मेट्रिक्स (समय के अनुसार संख्या): RED/USE, व्यवसाय KPI, SLI। TSDB में संग्रहीत।
लॉग्स (पाठ/JSON में घटनाएँ): ऑडिट, त्रुटियां, व्यावसायिक तथ्य, सुरक्षा।
ट्रेस (स्पैन): सेवाओं, विलंबताओं, देरी के कारणों के माध्यम से पथ का अनुरोध करें।
रूपरेखा: सीपीयू/मेमोरी/ईबीपीएफ धाराएँ, ढेर/ताला सामग्री।
RUM और सिंथेटिक्स: वास्तविक उपयोगकर्ता (वेब/ऐप) + रोबोट जांच।
टेलीमेट्री कैटलॉग: स्कीमा, पीआईआई नीतियां, प्रतिधारण अवधि, लागत टैग।
2) सिग्नल टैक्सोनॉमी और सिद्धांत
RED для API: दर, त्रुटियाँ, अवधि।
बुनियादी ढांचे के लिए उपयोग: उपयोग, संतृप्ति, त्रुटियां (सीपीयू, डिस्क, नेटवर्क, कतारें)।
SLI/SLO: औसत दर्जे का संकेतक (उदा। सफल अनुरोध/सभी, p95 विलंबता), पहुंच लक्ष्य (उदा। "99. 30 दिनों में 9%"), त्रुटि बजट - प्रक्रिया ट्रिगर।
उच्च-कार्डिनैलिटी समझदारी से: लेबल कटौती (क्षेत्र/किरायेदार/प्रदाता) में उपयोगी होना चाहिए, लेकिन टीएसडीबी को नहीं उड़ाना चाहिए।
3) मानक और अंत-से-अंत सहसंबंध
OpenTelemetry (OTel): मेट्रिक्स, लॉग और ट्रेस के लिए एकल SDK/प्रोटोकॉल।
पहचानकर्ता: 'ट्रेस _ आईडी', 'स्पैन _ आईडी', 'सहसंबंध _ आईडी', 'प्लेयर _ आईडी' (छद्म नामांकित), 'पेमेंट _ रूट'।
फ्लो आईडी: इंग्रेस गेटवे - सभी माइक्रोसर्विसेस भुगतान/पीएसपी कतारें/नौकरियां लॉग/मेट्रिक्स/स्पैन।
उदाहरण: सहसंबंध शीर्षक
traceparent: 00-<trace_id>-<span_id>-01 x-request-id: <correlation_id>
4) मेट्रिक्स: हम क्या और कैसे मापते हैं
नामकरण/लेबल
' सर्विस =" पेमेंट्स-एपी"', 'एनवी = "प्रोड",' क्षेत्र =" यूरोपीय संघ-पश्चिम"',' किरायेदार',' प्रदाता =" पीएसपीएक्स"।
प्रोमेथियस उदाहरण
prometheus
RED http_requests_total{service="api",route="/deposit",method="POST",status="200"}
http_request_duration_seconds_bucket{service="api",le="0. 25",route="/deposit"} 1234 http_request_errors_total{service="api",route="/deposit"}
USE cpu_utilization_ratio{node="n1"} 0. 71 queue_depth{queue="withdrawals"} 128
Бизнес payments_success_total{psp="X",currency="EUR"} 4521 payment_conversion_ratio{route="pspX"} 0. 948
हिस्टोग्राम और उदाहरण
स्टोर लेटेंसी हिस्टोग्राम (देशी-हिस्टोग्राम/uckets) और एक विशिष्ट ट्रैक पर "धीमी बाल्टी" से कूदने के लिए 'ट्रेस _ आईडी' के साथ अनुकरणीय बांधना।
5) लॉग: संरचित और सुरक्षित
केवल JSON (प्रोड में कोई "फ्री-फॉर्म" नहीं)।
Поля: : 'टाइमस्टैम्प', 'गंभीरता', 'सेवा', 'ट्रेस _ आईडी', 'सहसंबंध _ आईडी', 'प्लेयर _ आईडी _ हैश', 'इवेंट', 'राशि', 'मुद्रा', 'आईपी _ हैश'।
पीआईआई मास्किंग/हैशिंग, संवेदनशील के लिए अलग सूचकांक/प्रतिधारण।
लॉग पाइपलाइनें: पार्सिंग → सामान्यीकरण → संवर्धन (भू/एएसएन) → पीआईआई संपादन → अनुक्रमण।
JSON घटना का उदाहरण
json
{
"ts":"2025-11-05T10:42:31Z",
"sev":"ERROR",
"service":"payments-api",
"event":"psp_timeout",
"trace_id":"9c5e...e2",
"route":"pspX",
"duration_ms": 3100,
"attempt":2,
"player_id_hash":"p:1b7f...",
"pii_redacted":true
}
6) निशान: जहां समय खो जाता है
स्पैन: इनपुट अनुरोध, प्रदाता कॉल (पीएसपी/गेम प्रदाता), डेटाबेस/कैश, इंटरसर्विस आरपीसी।
विशेषताएँ: 'db। सिस्टम ',' नेट। सहकर्मी। नाम ',' संदेश। सिस्टम ',' psp। मार्ग ',' खेल। प्रदाता '।
नमूना:- वॉल्यूम के लिए सिर आधारित
- पूंछ आधारित (शर्तों के अनुसार: त्रुटियां, p95 +, वीआईपी-सेगमेंट),
- भुगतान/पीआईआई-महत्वपूर्ण के लिए गारंटीकृत-रखना।
7) सामने और मोबाइल की अवलोकन क्षमता
RUM: TTFB, FCP/LCP/CLS/INP, JS त्रुटियां, नेटवर्क और SPA रूटिंग।
क्रैश रिपोर्ट: प्रतीकवाद, deobfuscation, बिल्ड वर्जन, डिवाइस/ओएस।
सिंथेटिक्स: प्रवेश/जमा/दर परिदृश्य; जियोडिस्ट्रिब्यूटेड चेक।
8) SLO, SLI और त्रुटि बजट
एसएलओ उदाहरण (छद्म-YAML)
yaml service: payments-api sli:
- name: availability expr: sum(rate(http_requests_total{status=~"2.. 3.."}[5m]))
/ sum(rate(http_requests_total[5m]))
- name: latency_p95 expr: histogram_quantile(0. 95, rate(http_request_duration_seconds_bucket[5m]))
targets:
availability: "99. 9%/30d"
latency_p95: "<=250ms/30d"
error_budget_policy:
fast_burn: 5% for 1h -> page, freeze deploy slow_burn: 20% for 24h -> incident, improvement plan
त्रुटि बजट द्वारा सचेत करना, "हर मीट्रिक" द्वारा नहीं।
बजट दहन के लिए फ्रीज प्रक्रियाएं: सीमा रिलीज/कैनरी।
9) शोर के बिना सचेत करना
मल्टी विंडो, मल्टी-बर्न नियम: शॉर्ट/लॉन्ग विंडो।
Deduplication/रूटिंग: ऑन-कॉल में सेवा/क्षेत्र/आलोचना द्वारा।
रनबुक यूआरएल और संदर्भ ऑटोकॉलेक्शन (नवीनतम प्रेषण, कॉन्फिग परिवर्तन, निर्भरता ग्राफ)।
निर्धारित कार्य के दौरान शांत घंटे और दमन।
उदाहरण नियम (PromQL विचार)
promql alert: PaymentsSLOFastBurn expr: slo_error_rate_5m > 2 slo_budget_rate for: 15m labels: { severity="page", service="payments-api" }
annotations:
summary: "SLO fast burn"
runbook: "https://runbooks/payments/slo"
10) प्रोफाइलिंग और ईबीपीएफ
eBPF/profilers: CPU/alloc लौ रेखांकन, I/O विलंबता, नेटवर्क ड्रॉप, Syscall विसंगतियाँ।
p99 बाधाओं, झटकों और दुर्लभ फ्रीज के लिए उपयोगी।
11) व्यापार अवलोकन (उत्पाद और जोखिम)
वित्त/मुद्रीकरण: जमा रूपांतरण, TTW (समय-से-बटुआ), लेखक ।/सेटल, रद्द/चार्जबैक।
खेल गतिविधि: प्रतिधारण/लकीर, लाइव दांव का हिस्सा, प्रदाताओं की "चिपचिपाहट"।
एंटीफ्राड/दुरुपयोग: कार्रवाई की गति, उपकरण/आईपी मैच, सहसंबंध।
आरजी संकेतक: लंबे सत्र, "डोगन", स्टेक ग्रोथ।
बिजनेस मैट्रिक्स तकनीकी मैट्रिक्स और एनोटेशन इवेंट्स के साथ सहसंबद्ध हैं।
12) सुरक्षा, पीआईआई और अनुपालन
डेटा-क्षेत्र: डेटासेट/लॉग टैग ('पिई = सही', 'क्षेत्र = ईयू')।
अनुक्रमण से पहले मास्किंग, पहचानकर्ताओं का उपनाम।
ऑडिट के लिए WORM स्टोर; भूमिका-आधारित लॉग एक्सेस।
प्रतिधारण अवधि: टेकलॉग/ऑडिट/व्यवसायों के लिए अलग।
लॉग में कच्चे रहस्यों का निषेध; सीआई में स्कैन जांच।
13) मूल्य प्रबंधन (FinOps)
कार्डिनैलिटी सीमा: 'उपयोगकर्ता _ id', 'सत्र _ id' से सावधान।
भागीदारी/प्रतिधारण: गर्म (7-14 दिन), गर्म (30-90), ठंड (संग्रह)।
टेल-आधारित नमूना और डाउनसैम्पलिंग मेट्रिक्स।
टैग 'टीम', 'सेवा', 'किरायेदार' द्वारा बिलिंग: रिपोर्ट "जो अवलोकन को जलाता है।"
14) उपकरण (संदर्भ स्टैक)
मेट्रिक्स: मेट्रिक्स के लिए प्रोमेथियस/झील, डैशबोर्ड ग्राफाना।
लॉग: लोकी/ईएलके; अंतर्ग्रहण नियम, कमी/पार्सिंग।
ट्रेल्स: टेम्पो/जैगर/ओटेल कलेक्टर; मेट्रिक्स से अनुकरणीय लिंक।
सिंथेटिक्स: ब्लैकबॉक्स निर्यातक, ब्राउज़र रोबोट।
अलर्टिंग: अलर्टमैनेजर/चैट एकीकरण, ऑन-कॉल रोटेशन।
प्रोफाइलिंग: eBPF/निरंतर प्रोफाइलिंग।
15) उदाहरण: नींव को जल्दी से लागू करें
(क) एपीआई (छद्म कोड) के लिए लाल निर्यातक:python from prometheus_client import Counter, Histogram, start_http_server reqs = Counter('http_requests_total','', ['route','method','status'])
lat = Histogram('http_request_duration_seconds','', ['route'])
def handle(req):
with lat. labels(route=req. route). time():
status = app(req)
reqs. labels(route=req. route,method=req. method,status=str(status)). inc()
(ख) एम्बेडिंग trace_id इन लॉग्स (मिडिलवेयर आइडिया):
go tid:= ctx. Value("trace_id")
logger = logger. With("trace_id", tid)
logger. Info("deposit-accepted", "amount", amt, "route", route)
(ग) मैट्रिक्स में उदाहरण:
prometheus http_request_duration_seconds_bucket{..., le="0. 25"} 1023 # exemplar: trace_id=9c5e...
16) प्रक्रियाएं और ऑपरेटिंग सिस्टम
मैट्रिक्स/लेबल (नामकरण-गाइड) और डैशबोर्ड टेम्पलेट का एकीकृत शब्दकोश।
स्तंभों में स्वचालित रूप से रिलीज-एनोटेशन।
घटनाएं: कार्ड, समयरेखा, आरसीए कोई शुल्क नहीं, एक्शन आइटम।
प्रशिक्षण अलार्म ("गेम-डे"): नकली बूंदें, पीएसपी देरी, कैश ओवरहीटिंग।
रनबुक: अलर्ट से चरण-दर-चरण निर्देश और ऑटो-लिंक।
17) परिपक्वता चेकलिस्ट
1. OTel SDK/कलेक्टर → मेट्रिक्स/लॉग/ट्रेल्स का एकल निर्यात।
2. RED/USE कुंजी API द्वारा सभी सेवाओं + SLI/SLO को कवर करता है।
3. सहसंबंध 'ट्रेस _ आईडी' ⇄ लॉग्स ⇄ मेट्रिक्स (उदाहरण, जंप-लिंक)।
4. मल्टी-बर्न और रनबुक लिंक के साथ बजट त्रुटियों पर अलर्ट।
5. "जमा/दर/निकासी" के लिए RUM + सिंथेटिक्स।
6. सफेद सूची बिक्री पर प्रोफाइलिंग (ईबीपीएफ)।
7. पीआईआई नीतियां: मास्किंग, ज़ोन, एक्सेस, रिटेंशन पीरियड्स।
8. टेलीमेट्री लागत पर वित्तीय रिपोर्ट ('टीम/सेवा' टैग)।
9. "पीक लोड के लिए तत्परता": परीक्षण योजना, वार्म अप कैश, अलर्ट टेम्पलेट।
10. नियमित आरसीए और एसएलओ/दहलीज संशोधन।
18) एंटीपैटर्न
संरचना और 'ट्रेस _ आईडी' के बिना "शीट" लॉग करता है।
प्रत्येक मीट्रिक → अलर्ट FAT के लिए अलर्ट।
सही बाल्टी के बिना हिस्टोग्राम - "फ्लैट" p95।
लेबल की असीमित कार्डिनैलिटी - मूल्य का एक विस्फोट।
RUM/सिंथेटिक्स की कमी "सब ठीक है", लेकिन उपयोगकर्ता नहीं है।
प्रौद्योगिकीविदों के साथ पीआईआई का मिश्रण, अनिश्चितकालीन प्रतिधारण।
व्यवसाय केपीआई से टेलीमेट्री अलगाव - "विलंबता गिर रही है, राजस्व भी।"
सारांश
मजबूत अवलोकन उत्पाद, एसआरई, सुरक्षा और भुगतान के बीच एक आम भाषा है। ओटीएल के लिए मैट्रिक्स, लॉग, ट्रैक को जोड़ कर, त्रुटियों के बजट के साथ एसएलओ को पेश करना, स्मार्ट और लागत प्रबंधनीय बनाना, आपको एक ऐसी प्रणाली मिलती है जो पहले की समस्याओं को नोटिस करती है, तेजी से ठीक होती है और अनुमार्यता है।