Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Ruby

AppSignal ने लंबे समय तक चलने वाले स्ट्रीमिंग Rack रिस्पांस सपोर्ट के साथ Ruby निगरानी को बढ़ाया

हम यह घोषणा करने के लिए उत्साहित हैं कि AppSignal अब लंबे समय तक चलने वाले स्ट्रीमिंग Rack रिस्पांस के लिए बेहतर निगरानी प्रदान करता है। हमारे बेहतर Rack रिस्पांस निगरानी का मतलब है कि आप अपने Ruby एप्लिकेशन के लंबे समय तक चलने वाले रिस्पांस के स्वास्थ्य में गहरी दृश्यता प्राप्त कर सकते हैं, जिससे आप उन त्रुटियों को पकड़ सकते हैं जो अनुरोध का मुख्य भाग परोसे जाने के मिनटों या घंटों बाद उत्पन्न हो सकती हैं।

ऑब्जर्वेबिलिटी की यह नई परत Julik Tarkhanov, Cheddar Payments में इंजीनियरिंग निदेशक के एक मूल्यवान योगदान का परिणाम है। उनके काम ने हमें अपने Ruby जेम के भीतर लंबे समय तक चलने वाले रिस्पांस की निगरानी करने में सक्षम बनाया, जिससे रीयल-टाइम प्रदर्शन निगरानी के लिए हमारे समर्थन में वृद्धि हुई।

इस ब्लॉग पोस्ट में, हम बताएंगे कि आपके Ruby ऐप्स की निगरानी करते समय इस जोड़ का क्या अर्थ है और चर्चा करेंगे कि कैसे हमारा ओपन-सोर्स दृष्टिकोण ग्राहकों के साथ सहयोग को बढ़ावा देता है ताकि कार्रवाई योग्य, उच्च-प्रभाव अंतर्दृष्टि प्रदान की जा सके।

लंबे समय तक चलने वाले Rack रिस्पांस की निगरानी क्यों करें?

आमतौर पर, जब Rack रिस्पांस की निगरानी की जाती है, तो AppSignal रिस्पांस बॉडी को रेंडर करने में लगने वाले समय को ट्रेस कर सकता है:

AppSignal ने लंबे समय तक चलने वाले स्ट्रीमिंग Rack रिस्पांस सपोर्ट के साथ Ruby निगरानी को बढ़ाया

हालांकि, AppSignal लंबे समय तक चलने वाले रिस्पांस की निगरानी करने में असमर्थ था, जैसे कि बड़ी फाइल डाउनलोड करते समय। इसका मतलब था कि यह जानना संभव नहीं था कि रिस्पांस को रेंडर करने में कितना समय लगा या रेंडर होने के दौरान कोई अपवाद हुआ या नहीं।

जबकि यह मुद्दा विशिष्ट है और हमारे कई ग्राहकों के रिस्पांस निगरानी के अनुभवों पर लागू होने की संभावना नहीं है, यह Cheddar Payments के लिए एक मुद्दा था। उनके उपयोग के मामले के लिए, लंबे समय तक चलने वाले रिस्पांस की निगरानी करने में असमर्थता लंबी प्रक्रियाओं के दौरान प्रदर्शन को ट्रैक करने और संभावित विफलताओं का निदान करने में चुनौतियां पैदा करती थी।

Cheddar Payments में, हमारे पास प्रमुख रिपोर्ट्स के लिए डाउनलोड हैं जो Rails से zip फाइलों के अंदर स्ट्रीमिंग फैशन में वितरित किए जाते हैं। मैंने देखा कि इन रिपोर्ट्स की सेवा AppSignal निगरानी से बाहर थी — क्योंकि AppSignal ट्रेसिंग तब रुक जाती जब ऐप में HTTP इंटरैक्शन का "मुख्य" भाग समाप्त हो जाता। इन रिस्पांस को ट्रेस करना महत्वपूर्ण था क्योंकि उन रिपोर्ट्स को जनरेट करने में त्रुटियां थीं, जिन्हें हम AppSignal में नहीं देख सके।

Julik Tarkhanov, Cheddar Payments में इंजीनियरिंग निदेशक

लंबे समय तक चलने वाले Rack रिस्पांस की निगरानी के लिए योगदान-संचालित समाधान

WeTransfer में अपने दिनों से Rack में लंबे समय तक चलने वाले रिस्पांस के अनुभव के कारण, Julik ने हमारे Ruby जेम में योगदान करने का फैसला किया, लंबे समय तक चलने वाले रिस्पांस की निगरानी के लिए एक समाधान लागू किया।

हमारे पास पहले से ही एक APM (AppSignal) है, कुछ कार्यक्षमता है जिसे आसानी से लागू किया जा सकता है, तो क्यों न करें?

एक विकल्प तलाशने के बजाय, Julik के प्रारंभिक पुल रिक्वेस्ट ने AppSignal के ट्रेस के भीतर लंबे समय तक चलने वाले Rack रिस्पांस की निगरानी करने का एक तरीका पेश किया। AppSignal इंटीग्रेशन टीम के Tom की कड़ी मेहनत के लिए धन्यवाद, हमने PR #1140 में एक समाधान को पूरी तरह से लागू किया और इसे अपने Ruby जेम के संस्करण 3.10 में जारी किया, एज केस को संबोधित करते हुए और विश्वसनीयता में सुधार करते हुए।

Julik के समाधान ने उनकी टीम को निगरानी के लिए AppSignal का उपयोग जारी रखने की अनुमति दी, वैकल्पिक टूलिंग को लागू करने या स्विच किए बिना लंबे समय तक चलने वाले रिस्पांस को ट्रैक करने की आवश्यकता को संबोधित किया।

AppSignal अब लंबे समय तक चलने वाले रिस्पांस की अवधि को कैप्चर कर सकता है और ग्राहकों को सूचित कर सकता है कि रिस्पांस रेंडरिंग के दौरान किसी भी बिंदु पर कोई समस्या उत्पन्न होनी चाहिए, जिससे हमारे ग्राहकों को ऑब्जर्वेबिलिटी की एक अतिरिक्त परत मिलती है।

AppSignal ने लंबे समय तक चलने वाले स्ट्रीमिंग Rack रिस्पांस सपोर्ट के साथ Ruby निगरानी को बढ़ाया

हम ओपन-सोर्स योगदान को क्यों महत्व देते हैं

AppSignal में, हमने हमेशा ग्राहक प्रतिक्रिया और फीचर अनुरोधों को महत्व दिया है। जबकि हर अनुरोध उत्पादन तक नहीं पहुंच सकता, हम अपने ग्राहकों की जरूरतों का पता लगाने के लिए खुले हैं।

जब हम एक ऐसी जरूरत की पहचान करते हैं जो सभी को लाभ पहुंचा सकती है, तो हम यह देखने के लिए अपनी पूरी कोशिश करते हैं कि क्या हम इसे एक कामकाजी समाधान में बदल सकते हैं। Rails समुदाय में कई लोगों की तरह, हम ओपन-सोर्स सहयोग की शक्ति में विश्वास करते हैं, जो हमें चुस्त और अपने ग्राहकों की विकसित होती जरूरतों के प्रति उत्तरदायी बने रहने में मदद करता है।

एक छोटी, बूटस्ट्रैप्ड टीम के रूप में, हम हर ग्राहक की इच्छा सूची में हर सुविधा को लागू नहीं कर सकते। यहीं पर हमारे जेम में योगदान आते हैं: वे हमें समुदाय की मदद से अपने उत्पाद की क्षमताओं का विस्तार करने और महत्वपूर्ण सुविधाओं को तेजी से संबोधित करने में सक्षम बनाते हैं।

हमारा ओपन-सोर्स दृष्टिकोण यह है कि हम इंटीग्रेशन में यथासंभव खुले में करने का लक्ष्य रखते हैं। हम समुदाय से योगदान देखना पसंद करते हैं और हमेशा विचारों और सुधारों का स्वागत करते हैं।

Thijs Cadier, AppSignal के CTO

AppSignal में, हम जो कुछ भी करते हैं उसके केंद्र में अपने ग्राहकों को रखते हैं, लगातार सर्वोत्तम संभव अनुभव और उपकरण प्रदान करने के लिए काम करते हैं ताकि आप अपने एप्लिकेशन की निगरानी और अनुकूलन कर सकें। इसलिए हमारे ग्राहक हमारे प्यार करते हैं:

  • फ्री एक्सपर्ट सपोर्ट
  • पारदर्शी मूल्य निर्धारण
  • लचीली अपग्रेड नीति
  • उपयोग में आसान इंटरफेस

अभी भी आश्वस्त नहीं हैं? यहां Julik का क्या कहना है:

AppSignal एक उत्कृष्ट उत्पाद है, और इसे आजमाना टूलिंग के मामले में एक बड़ी प्रतिबद्धता नहीं है। और OpenTelemetry की शुरुआत के साथ, यह केवल बेहतर होने जा रहा है।

हमारे इंस्टॉलेशन विज़ार्ड के साथ, आप एक फ्री ट्रायल शुरू कर सकते हैं और AppSignal को कॉफी पीने में लगने वाले समय से भी कम समय में चालू कर सकते हैं। ओह, और क्या हमने उल्लेख किया कि हम नए ग्राहकों को (अनुरोध पर) स्ट्रॉपवाफेल्स भेजते हैं?

कोई प्रश्न है या AppSignal कैसे आपकी ऐप के मेट्रिक्स का अधिकतम लाभ उठाने में मदद कर सकता है, इसके बारे में अधिक जानना चाहते हैं? बेझिझक हमें एक लाइन ड्रॉप करें, हम हमेशा मदद करने में खुश हैं!

AppSignal ने लंबे समय तक चलने वाले स्ट्रीमिंग Rack रिस्पांस सपोर्ट के साथ Ruby निगरानी को बढ़ाया

Connor James

AppSignal में डेवलपर मार्केटिंग मैनेजर। पॉडकास्ट एडिक्ट जो कैनोली को इतना प्यार करता है कि वह अपना नाम Connoli बदलने पर विचार कर रहा है। वह सोचता है कि color में एक `u` है। आप उसे माइक पर, स्टेज पर, या ऑफ ड्यूटी होने पर सोफे पर लेटा हुआ पा सकते हैं।

Connor James के सभी आलेख

  1. ट्किंटर में बटन विजेट का टेक्स्ट प्राप्त करें ट्किंटर में बटन विजेट का टेक्स्ट प्राप्त करें

    मान लीजिए कि किसी विशेष एप्लिकेशन के लिए, हम इसके नाम से बटन वैल्यू प्राप्त करना चाहते हैं। ऐसे मामलों में, हम .cget() फंक्शन का उपयोग कर सकते हैं। हर ट्किंटर विजेट .cget() फंक्शन को सपोर्ट करता है, क्योंकि इसका उपयोग विजेट कॉन्फ़िगरेशन जैसे वैल्यू या नाम प्राप्त करने के लिए किया जा सकता है। उदाहरण

  1. iPhone/iOS में दो NSDate की तुलना कैसे करें? iPhone/iOS में दो NSDate की तुलना कैसे करें?

    Swift में दो डेट्स की तुलना इस लेख में हम देखेंगे कि Swift में दो NSDate की तुलना कैसे करें। सबसे पहले हमें दो NSDate बनाने होंगे। हम इसे सिम्युलेटर के बजाय प्लेग्राउंड में करेंगे। पहले दो अलग-अलग डेट्स बनाएं: let dateOne = DateComponents() dateOne.day = 5 dateOne.month = 6 dateOne.year = 1993 le

  1. HTML में टेबल बॉर्डर कैसे बनाएं? HTML में टेबल बॉर्डर कैसे बनाएं?

    CSS border प्रॉपर्टी उपयोग करें HTML5 में <table> का border एट्रिब्यूट डिप्रिकेटेड है। टेबल, <th> और <td> के लिए CSS border प्रॉपर्टी उपयोग करें। उदाहरण <!DOCTYPE html> <html> <head> <style> table, th, td { border: 1px solid black; } </s