GH GambleHub

अवलोकन - नमूना का पता लगाना

1) अवलोकन क्यों

अवलोकन (O11y) तीन सवालों के जवाब देता है: क्या हो रहा है, क्यों, इसे कैसे ठीक किया जाए। यह 4 संकेतों पर निर्भर करता है:
  • मेट्रिक्स (कुल मिलाकर, जल्दी से प्रतिक्रिया करें);
  • लॉग (विवरण और फोरेंसिक);
  • निशान (क्रॉस-कटिंग कारण-प्रभाव संबंध);
  • प्रोफाइल (CPU/ढेर/प्रोड मोड में लॉक विवाद)।

कुंजी: संकेतों + टेलीमेट्री अर्थशास्त्र (नमूना, प्रतिधारण, संपीड़न) के बीच सहसंबंध।

2) सिग्नल मैप और सिद्धांत

2. 1 RED/USE

RED (API के लिए): दर (RPS), त्रुटियां (% 5xx/4xx महत्वपूर्ण), अवधि (p50/p95/p99)।

उपयोग (संसाधनों के लिए): उपयोग, संतृप्ति, त्रुटियां (एनआईसी, सीपीयू, डिस्क, कतारें)।

2. 2 उत्पाद अपरिवर्तनीय

एक SLO परिभाषित करें (उदा। "p95 विलंबता '/v1/भुगतान '≤ 300 मिलियन, गलत बजट 0। 30 दिनों में 5%")। अलर्ट केवल तभी "चीखना" चाहिए जब एसएलओ का उल्लंघन या जलाया जाए।

2. 3 संदर्भ

W3C ट्रेस संदर्भ ('traceparent', 'tracestate') और सामान को सुरक्षित रूप से उन/व्यावसायिक विशेषताओं (जैसे) को स्थानांतरित करने के लिए लागू करें। 'किरायेदार', 'क्षेत्र', कोई पीआईआई नहीं)।

3) अवलोकन वास्तुकला

SDK/ऑटो-इंस्ट्रूमेंटेशन: सेवाओं में OpenTelemetry (OTel) (HTTP/gRPC/DB/क्लाइंट)।

एक बस के रूप में ओटेल कलेक्टर: रिसेप्शन → संवर्धन → नमूना → निर्यात (प्रोमेथियस, टेम्पो/जैगर, लोकी/ईएलके, क्लिकहाउस)।

वाल्ट्स:
  • मेट्रिक्स: प्रोमेथियस/मिमिर/विक्टोरिया मेट्रिक्स;
  • ट्रेल्स: टेम्पो/जैगर/जिपकिन;
  • लॉग: Loki/ELK/Vector→S3+deshevoye भंडारण;
  • प्रोफाइल: पाइरोस्कोप/पारका।
  • सहसंबंध: सेवा रेखांकन, उदाहरण, p99 ग्राफ से एक विशिष्ट ट्रेस में संक्रमण।

4) नमूना ट्रेसिंग: रणनीतियाँ

4. 1 हेड-आधारित नमूना

सरल और सस्ता कार्यान्वयन (एसडीके/इंग्रेस में)।

विपक्ष: दुर्लभ त्रुटियों/धीमी प्रश्नों को याद कर सकते हैं।

कब: उच्च आरपीएस, सख्त बजट, एक अनुमानित शेयर की आवश्यकता होती है (उदाहरण के लिए, 1-5%)।

4. 2 पूंछ आधारित नमूना

अवधि समाप्त होने के बाद कलेक्टर में निर्णय लिया जाता है।

विसंगतियों को चुने जाने की गारंटी दी जा सकती है: त्रुटियां, p99, विशिष्ट मार्ग/किरायेदार।

विपक्ष: बफरिंग, कठिन और अधिक महंगा।

जब: मध्यम लागत पर "सार्थक" ट्रेल्स की आवश्यकता होती है।

4. 3 संयुक्त मॉडल

ग्लोबल हेड 1-5%, प्लस टेल नियम: "हमेशा त्रुटियों/धीमी गति से फैलाव को बचाएं", "50% कैनरी ट्रैफ़िक का नमूना लें", "एक घटना में भुगतान पथ के सभी निशान बचाएं।"

5) गतिशील नमूना और टेलीमेट्री बजट

बजट-जागरूक: होल्ड वॉल्यूम ≤ एन ट्रेल्स/मिनट; यदि पार हो जाता है, तो थ्रेसहोल्ड उठाएं (उदाहरण के लिए, केवल p99 का चयन करें। 5 +, केवल त्रुटि)।

मार्ग/किरायेदार द्वारा नियम: महत्वपूर्ण समापन बिंदु/किरायेदार - अधिक हिस्सेदारी

अनुकूली विंडो: फटता है - अस्थायी रूप से त्रुटि/धीमी दर बढ़ाता है।

कार्डिनैलिटी में कमी: उपयोगकर्ता-एजेंट, आईपी/एएसएन, स्क्वैश स्टैक ट्रेस, मास्क रहस्य को सामान्य करें।

6) कॉन्फ्रेंस (संदर्भ)

6. 1 ओपनटेलीमेट्री कलेक्टर - पूंछ-नमूना (यमल-टुकड़ा)

yaml receivers:
otlp: { protocols: { http: {}, grpc: {} } }

processors:
batch: { send_batch_size: 8192, timeout: 2s }
tail_sampling:
decision_wait: 5s num_traces: 100000 expected_new_traces_per_sec: 5000 policies:
- name: always-error type: status_code status_code: { status_codes: [ERROR] }
- name: slow-endpoints type: latency latency: { threshold_ms: 300 }      # p95 цель
- name: important-routes type: string_attribute string_attribute: { key: http. target, values: ["/v1/payments", "/v1/payouts"] }
- name: tenant-eu1 type: string_attribute string_attribute: { key: tenant, values: ["eu-1"] }
- name: probabilistic-default type: probabilistic probabilistic: { sampling_percentage: 5. 0 }

exporters:
otlphttp/tempo: { endpoint: http://tempo:4318 }
prometheus: { endpoint: "0. 0. 0. 0:9464" }

service:
pipelines:
traces:
receivers: [otlp]
processors: [batch, tail_sampling]
exporters: [otlphttp/tempo]

6. 2 प्रोमेथियस - उदाहरण (टुकड़ा)

अनुप्रयोग में, हिस्टोग्राम रिकॉर्ड करते समय, 'ट्रेस _ आईडी' के साथ उदाहरण जोड़ें। ग्राफाना में, "सुइयों" पर क्लिक करने से ट्रेस हो जाता है।

yaml scrape_configs:
- job_name: api scrape_interval: 10s honor_labels: true static_configs: [{ targets: ["api:9100"] }]
exemplar_limit: 10

6. 3 लोकी - लॉग की लागत को कम करना

लेबल केवल स्थिर हैं ('सेवा', 'एनवी', 'क्षेत्र', 'रूट _ क्लास')।

उच्च कार्डिनैलिटी (request_id, user_id) - पेलोड में, लेकिन पुनर्वितरण के साथ।

नमूना "सफल" InfoLogs, किसी भी त्रुटि/चेतावनी को सहेजें।

6. 4 जैगर/टेम्पो - प्रतिधारण और सूचकांक

3-7 दिनों के लिए कच्चे रास्ते स्टोर करें, लंबे समय तक कुल/समरूपता।

सस्ते भंडारण (S3-संगत) में parquet/ब्लॉक सक्षम करें, सूचकांक कॉम्पैक्ट हैं।

7) ट्रेसिंग सिमुलेशन

7. 1 नामकरण और गुण

'service। नाम ',' सेवा। संस्करण ',' तैनाती। पर्यावरण '।

'http। विधि ',' http। मार्ग ',' http। लक्ष्य ',' http। status_code', 'नेट। सहकर्मी। नाम '।

पीआईआई के बिना व्यावसायिक विशेषताएं: 'किरायेदार', 'क्षेत्र', 'भुगतान _ प्रदाता', 'गेम _ आईडी'।

7. 2 घटनाएँ और कनेक्शन

स्पैन इवेंट्स: महत्वपूर्ण बिंदु (डीबी लेनदेन की शुरुआत, रिट्रे, सर्किट ओपन, कैश मिस)।

लिंक: zapros→vebkhuk/sobytiye संचार; EDA और आउटबॉक्स/इनबॉक्स के लिए उपयोगी।

7. 3 उदाहरण

विलंबता/आकार हिस्टोग्राम में 'ट्रेस _ आईडी' के साथ उदाहरण जोड़ें: एक क्लिक में मीट्रिक ट्रेस के लिए → trace से नेविगेशन।

8) मेट्रिक्स: क्या और कैसे

8. 1 तकनीकी

मार्ग/किरायेदार/प्रदाता (पीएसपी, केवाईसी) द्वारा RED।

Пулы: 'db _ connections _ in _ use', 'http _ client _ in _ flight', 'कतार _ depth'।

स्थिरीकरण: रिट्रीट, टाइमआउट, सर्किट ओपन/हाफ-ओपन, रेट-लिमिट हिट।

गो/जावा/पायथन रनटाइम: जीसी रुकता है, ढेर, सुरक्षित बिंदु, गिल देरी।

8. 2 बिजनेस मेट्रिक्स

पंजीकरण/लॉगिन/एक जमा/निष्कर्ष, रूपांतरण, विफलताएं 3DS/KYC, चार्जबैक-अनुपात।

महत्वपूर्ण विशेषताएं: समय-से-बटुआ, सफलता-दर भुगतान।

8. 3 कार्डिनैलिटी और भंडारण

स्पष्ट बाल्टी के साथ हिस्टोग्राम (उदा। '[50 100 200 300 500 1000 2000] ms')।

उच्च कार्डिनैलिटी (कच्चे user_id, request_id) के साथ निशान से बचें - उन्हें लॉग/ट्रेल्स पर ले जाएं।

9) लॉग: मानक और सहसंबंध

प्रारूप: JSON + आवश्यक कुंजियाँ ('timestamp', 'level', 'message', 'trace _ id', 'span _ id', 'service', 'env').

संपादन: मुखौटा पैन, टोकन, पीआईआई।

नमूना: 'त्रुटि/चेतावनी' के लिए 100%, 'शोर' पथ पर 'जानकारी के लिए 5-20%

ट्रेस में बाइंडिंग - 'ट्रेस _ आईडी' के माध्यम से। लॉग स्ट्रिंग्स - "धुरी" का पता लगाने और इसके विपरीत।

10) बिक्री में रूपरेखा

CPU/ढेर/alloc/locks के लिए सतत प्रोफाइलिंग (Pyroscope/Parca) सक्षम करें.

गर्म ढेर के साथ सहसंबद्ध p99 चोटियाँ; 7-14 दिनों तक रखें।

11) SLO/त्रुटिपूर्ण बजट पर सचेत करना

एसएलओ अलर्ट: "गलत बजट एक्स %/घंटे की तुलना में तेजी से खर्च किया जाता है" (पूर्वानुमान अलर्ट)।

लक्षण, कारण नहीं: क्लाइंट स्तर (आरयूएम/एज या प्रति-मार्ग) के लिए सतर्क, सीपीयू के लिए नहीं।

मल्टी-विंडो, मल्टी-बर्न दर: 1 घंटे में 2% और 6 घंटे में 5% - दो स्थितियां।

नियोजित गिरावट के दौरान मौन: फीचर झंडे/कैनरी के दौरान दहलीज शिफ्ट।

12) लागत और प्रतिधारण

वॉल्यूम कोटा: ट्रेल्स ≤ एन टीबी/महीना, लॉग - गर्म 3-7 दिन, ठंडा एस 3 30-90 दिन, मेट्रिक्स - डाउनसैम्पलिंग (1 मिनट → 5 मिनट → 1 एच)।

पूंछ-नियम गलत/धीमा रखते हुए × 10- × 100 की मात्रा को कम करते हैं।

न्यूनतम लागत संकेत - मैट्रिक्स; उच्चतम मूल्य के साथ - "सही" ट्रेल्स और प्रोफाइल।

13) एंटीपैटर्न

"100% ट्रेल्स हमेशा" - लागत, शोर और ब्रेक का एक विस्फोट।

कुंजी/मास्किंग के बिना मुक्त प्रारूप में लॉग।

अनंत लेबल मेट्रिक्स (user_id/ip/full UA)।

कोई 'ट्रेसपेरेंट '/' सामान' - सहसंबद्ध नहीं किया जा सकता है।

SLO के बजाय CPU/ढेर पर अलर्ट - चैट "बर्न" बिना लाभ के।

त्रुटि प्राथमिकता के बिना "यादृच्छिक 1%" का नमूना/धीमी गति से - मूल्यवान मामलों को

14) डैशबोर्ड के उदाहरण (कंकाल)

एपीआई अवलोकन: आरपीएस, वर्ग द्वारा त्रुटि-दर, विलंबता p95/p99 (उदाहरण क्लिकेबल हैं), शीर्ष मार्ग।

रिलीज ़/कैनरी: पुराने/नए संस्करण मैट्रिक्स, आउटलेयर-रेट, ओपन-सर्किट, रेट्रीज़की तुलना।

PSP/KYC: प्रदाताओं द्वारा सफलता-दर, विलंबता और विफलता, भुगतान त्रुटियों के साथ सहसंबंध।

Infra: संसाधनों, कतार संतृप्ति, नेटवर्क बूंदों द्वारा उपयोग करें।

15) आईगेमिंग/वित्त की विशिष्टताएं

महत्वपूर्ण रास्ते (जमा/निष्कर्ष): केवल घटनाओं या सीमित खिड़कियों के लिए 100% ट्रेसिंग; सामान्य मोड में - पूंछ "सभी त्रुटि/लंबी विलंबता के साथ"।

क्षेत्र/किरायेदार: सामान में 'किरायेदार', 'अधिकार क्षेत्र', 'ब्रांड' जोड़ें; अधिकार क्षेत्र द्वारा SLO का निर्माण

एंटीफ्रॉड/बॉट फिल्टर: जोखिम एपीआई समाधान (अनुमति/इनकार/चुनौती), चुनौती-पास-दर, वेग-हिट के मैट्रिक्स और निशान।

ऑडिट/अनुपालन: पीआईआई के बिना न्यूनतम आवश्यक रखें; स्थिर लॉग - एक अलग सर्किट में।

16) प्रोड रेडीनेस चेकलिस्ट

  • एंड-टू-एंड प्रसार ('ट्रेसपेरेंट', 'बैगेज'), लॉग/मीट्रिक/ट्रेस सहसंबंध।
  • पूंछ-नमूना (त्रुटियों/धीमी/महत्वपूर्ण मार्ग) + संभाव्य डिफ़ॉल्ट के साथ ओटेल कलेक्टर।
  • RED/USE मेट्रिक्स, स्पष्ट बाल्टी, अनुकरणीय - ट्रेस के लिए संक्रमण।
  • एसएलओ और गलत बजट अलर्ट (दो समयसीमा)।
  • टेलीमेट्री नियम और बजट; डाउनसैम्पलिंग मेट्रिक्स; लॉग के लिए ठंडा भंडारण।
  • मानकीकृत JSON लॉग, redaction PII/रहस्य।
  • बिक्री में शामिल प्रोफाइलिंग; घटना के लिए "हॉट" स्टैक के डैशबोर्ड।
  • कैनरी डैशबोर्ड और संस्करण तुलना; "अंधे धब्बे" के बिना रिलीज़।
  • रनबुक: किसी घटना के नमूना हिस्से को अस्थायी रूप से कैसे बढ़ाया जाए।
  • गुण/लेबल नामकरण प्रलेखन और उच्च-कार्डिनैलिटी निषेध।

17) टीएल; डीआर

सहसंबंध के आसपास अवलोकन का निर्माण करें: RED/USE → exemplars metrics → trails → logs/profiles। संयुक्त नमूने के माध्यम से लागत का प्रबंधन करें: छोटे सिर% + पूंछ नियम (त्रुटियां, धीमी, महत्वपूर्ण मार्ग/किरायेदार) अलर्ट - SLO और त्रुटि बजट पर। प्रतिधारण और कार्डिनैलिटी को नियंत्रण में रखें, ओटेल कलेक्टर को "केंद्रीय तंत्रिका तंत्र" के रूप में उपयोग करें। "भुगतान/न्यायिक मार्गों के लिए - प्राथमिकता टेलीमेट्री और सख्त डेटा स्वच्छता।

Contact

हमसे संपर्क करें

किसी भी प्रश्न या सहायता के लिए हमसे संपर्क करें।हम हमेशा मदद के लिए तैयार हैं!

Telegram
@Gamble_GC
इंटीग्रेशन शुरू करें

Email — अनिवार्य है। Telegram या WhatsApp — वैकल्पिक हैं।

आपका नाम वैकल्पिक
Email वैकल्पिक
विषय वैकल्पिक
संदेश वैकल्पिक
Telegram वैकल्पिक
@
अगर आप Telegram डालते हैं — तो हम Email के साथ-साथ वहीं भी जवाब देंगे।
WhatsApp वैकल्पिक
फॉर्मैट: देश कोड और नंबर (उदा. +91XXXXXXXXXX)।

बटन दबाकर आप अपने डेटा की प्रोसेसिंग के लिए सहमति देते हैं।