HeadlinesBriefing HeadlinesBriefing.com

OTel-नेटिव उत्पाद: किसी भी Observability स्टैक में निर्यात

Hacker News •
×

Dan Gomez Blanco (New Relic) के योगदान के साथ। यदि आप self-hosted सॉफ़्टवेयर या SaaS उत्पाद बना रहे हैं, तो उपयोगकर्ता देर-सवेर अपने लॉग, ट्रेस और मेट्रिक्स अपने स्वयं के observability स्टैक में भेजने के लिए कहेंगे। उन्हें अंतर्निहित डैशबोर्ड में बाँधना या निर्यात को कुछ विशेष विक्रेताओं तक सीमित करना अनावश्यक बाधाएँ पैदा करता है। इसके बजाय, किसी भी Open Telemetry (OTel)-संगत बैकएंड में निर्यात का समर्थन करना एक विक्रेता-तटस्थ और भविष्य-सुरक्षित तरीका है, जो उपयोगकर्ताओं को अपना observability स्टैक चुनने की स्वतंत्रता देता है।

यह पोस्ट बताती है कि आप अपने उत्पाद को इस तरह कैसे डिज़ाइन करें कि उपयोगकर्ता जब चाहें तब लॉग, ट्रेस और मेट्रिक्स को OTel बैकएंड में निर्यात कर सकें। Open Telemetry मानक Open Telemetry Protocol (OTLP) पर चार सिग्नल प्रकार परिभाषित करता है: Logs (इवेंट रिकॉर्ड, request/access लॉग, टाइमस्टैम्प और मेटाडेटा वाले एप्लिकेशन लॉग), Traces (distributed traces और spans, जिनसे उपयोगकर्ता सेवाओं के बीच request flows देख सकते हैं और उन्हें लॉग से जोड़ सकते हैं), Metrics (counters, gauges और histograms, जैसे request rates, latency और error rates), और Profiles (नमूने जो दिखाते हैं कि execution के दौरान एप्लिकेशन संसाधनों का उपयोग कहाँ करते हैं)। तीनों सिग्नलों के लिए निर्यात की कहानी एक जैसी है: उपयोगकर्ता एक OTLP endpoint कॉन्फ़िगर करें और उसमें telemetry भेजें। आपका उत्पाद जो उत्पन्न करता है उसके आधार पर आप एक, दो या तीनों सिग्नल सपोर्ट कर सकते हैं। OTel निर्यात का समर्थन करने वाले कई प्लेटफ़ॉर्म कम से कम traces और logs सपोर्ट करते हैं, और अब बढ़ती संख्या में metrics भी सपोर्ट करते हैं। शुरू से तीनों के लिए डिज़ाइन करने से बाद में बदलाव की ज़रूरत नहीं पड़ती।

एक ठोस निर्यात रणनीति के हर समर्थित सिग्नल के लिए कुछ स्पष्ट गुण होते हैं: विक्रेता-तटस्थता, गहन कस्टम विकास की आवश्यकता न होना, समृद्ध संदर्भ का संरक्षण, और semantic conventions का समर्थन। दो संदर्भ विचारणीय हैं: आपका उत्पाद कहाँ चलता है? Self-hosted सॉफ़्टवेयर के लिए, अपने उत्पाद को Open Telemetry से instrument करें और ग्राहकों को environment variables या config file के ज़रिए endpoint कॉन्फ़िगर करने दें। Cloud प्लेटफ़ॉर्म के लिए, निर्यात प्रबंधित करने हेतु एक प्लेटफ़ॉर्म फ़ीचर जोड़ें। उदाहरण के लिए Keycloak और Kuma।

स्रोत: Hacker News · HeadlinesBriefing द्वारा सारांशित