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

इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

<पी> आपके सिस्टम की पूरी तस्वीर प्राप्त करने के लिए केवल आपके एप्लिकेशन की निगरानी करना हमेशा पर्याप्त नहीं होता है। अक्सर, सैटेलाइट ऐप्स (या सहायक ऐप्स) में चलने वाली सेवाएँ आपके दिन-प्रतिदिन के कार्यों पर तीव्र प्रभाव डाल सकती हैं। डेटाबेस सर्वर इसके प्रसिद्ध उदाहरण हैं। बैकअप स्क्रिप्ट और अन्य पृष्ठभूमि कार्य भी सिस्टम को धीमा कर सकते हैं और अक्सर इन्हें अनदेखा कर दिया जाता है।

<पी> Node.js के लिए AppSignal APM, और Ruby APM और Elixir APM स्वचालित रूप से आपके ऐप को इंस्ट्रुमेंट करते हैं। लेकिन AppSignal इन सैटेलाइट प्रक्रियाओं को डिफ़ॉल्ट रूप से नहीं देखता है। हर जगह निगरानी बढ़ाने और अपना सारा डेटा एक ही ऐप में रखने के लिए, आप ऐपसिग्नल का स्टैंडअलोन एजेंट इंस्टॉल कर सकते हैं।

ऐपसिग्नल का स्टैंडअलोन एजेंट

<पी> स्टैंडअलोन एजेंट उसी सॉफ़्टवेयर पर आधारित है जिसके साथ हम आमतौर पर रूबी, एलिक्सिर, या जावास्क्रिप्ट अनुप्रयोगों का उपयोग करते हैं। यह सॉफ़्टवेयर स्टैंडअलोन मोड में भी चल सकता है।

<पी> स्टैंडअलोन एजेंट का उपयोग निगरानी के लिए किया जा सकता है:

  • बुनियादी ढाँचा :मशीनें जो हमारे सिस्टम का हिस्सा हैं लेकिन एप्लिकेशन कोड नहीं चलाती हैं।
  • पृष्ठभूमि नौकरियाँ :जैसे गहन क्रॉन जॉब्स या लंबे समय तक चलने वाली डेटा-प्रोसेसिंग स्क्रिप्ट। यदि ये पृष्ठभूमि कार्य किसी समर्थित भाषा (रूबी, एलिक्सिर, या नोड.जेएस) में लिखे गए हैं तो आप मानक एकीकरण का उपयोग कर सकते हैं।
  • अधिक भाषाएँ :बॉक्स से बाहर समर्थित भाषाओं के अलावा अन्य भाषाओं में लिखे गए प्रोग्राम।
<पी> उदाहरण के लिए, स्टैंडअलोन एजेंट के साथ, हम पायथन में लिखे गए मशीन लर्निंग मॉडल को ट्रैक कर सकते हैं, इंस्ट्रूमेंट बैकअप स्क्रिप्ट, काफ्का दलालों की निगरानी कर सकते हैं, या अपने वेब फ़ार्म में होस्ट मेट्रिक्स एकत्र कर सकते हैं। आप अपने मुख्य अनुप्रयोगों के लिए पहले से मौजूद मेट्रिक्स के पूरक के लिए यह सारी जानकारी AppSignal पर देख सकते हैं।

यह कैसे काम करता है

<पी> एजेंट को डिबेट या आरपीएम पैकेज के रूप में भेजा जाता है और इसमें कोई भाषा निर्भरता नहीं होती है। यह किसी भी डेबियन/उबंटू या रेड हैट-आधारित सिस्टम में चलता है। विस्तृत इंस्टॉलेशन निर्देशों के लिए, एजेंट दस्तावेज़ देखें।

<पी> एक बार स्थापित होने के बाद, एजेंट कुछ ही मिनटों में कॉन्फ़िगर हो जाता है और एक डेमॉन के रूप में हमेशा चलता रहता है, चुपचाप आपके बुनियादी ढांचे की निगरानी करता है। इसके अलावा, एजेंट में एक StatsD सर्वर शामिल होता है जो आपके द्वारा लॉग किए गए किसी भी कस्टम डेटा को आपके AppSignal डैशबोर्ड में रिले करता है।

StatsD क्या है?

<पी> StatsD मनमाना डेटा एकत्र करने और एकत्र करने के लिए एक मानक है। यह लॉगिंग मीट्रिक और प्रदर्शन जानकारी पर केंद्रित है। यह यूडीपी कनेक्शन पर एक हल्के टेक्स्ट प्रोटोकॉल का उपयोग करता है जिसका आपकी मशीन में एक छोटा पदचिह्न होता है।

<पी> एक StatsD संदेश इस तरह दिखता है:

<पी> जहां KEY कोई भी मनमाना स्ट्रिंग है, और VALUE एक संख्या है. प्रकार मान परिभाषित करता है कि संख्या को कैसे संसाधित किया जाता है।

<पी> हम तीन प्रकार के मेट्रिक्स का समर्थन करते हैं:

  • सी :यह एक काउंटर है यह हर बार बुलाए जाने पर बढ़ता है। उदाहरण के लिए, active_users:1|c active_users में 1 जोड़ता है काउंटर.
  • जी :एक गेज एक संख्यात्मक मान लेता है और अद्यतन होने तक इसे बनाए रखता है। यह उन मानों को रिकॉर्ड करने के लिए उपयोगी है जो समय के साथ ऊपर और नीचे बदलते हैं, जैसे थ्रूपुट, सक्रिय उपयोगकर्ताओं की संख्या, या कतार में लंबित कार्यों की संख्या।
  • टी :स्टोर टाइमिंग मूल्य. यह प्रकार ट्रैकिंग अवधि के लिए आदर्श है। AppSignal सभी लॉग टाइमिंग के लिए माध्य, गिनती और प्रतिशत की गणना करता है।
<पी> अन्य असमर्थित मीट्रिक प्रकारों को चुपचाप अनदेखा कर दिया जाएगा।

StatsD को डेटा भेजना

<पी> स्टैंडअलोन एजेंट पोर्ट 8125 पर यूडीपी पैकेटों को सुनता है। हम नेटकैट का उपयोग करके कमांड लाइन से स्टेट्सडी-स्वरूपित स्ट्रिंग भेज सकते हैं:
 <पी> चूँकि हम यूडीपी का उपयोग कर रहे हैं, इसलिए हमें प्रतिक्रिया की प्रतीक्षा नहीं करनी पड़ेगी।

<पी> सोकैट भी काम करता है:

 <पी> इससे किसी भी बैच या क्रॉन जॉब को इंस्ट्रुमेंट करना आसान हो जाता है। उदाहरण के लिए, निम्न पंक्तियाँ यह लॉग करने के लिए एक गेज का उपयोग करती हैं कि बैकअप कार्य ने कितना डेटा उत्पन्न किया है:

 <पी> हम पूर्णांकों तक सीमित नहीं हैं। StatsD फ़्लोटिंग-पॉइंट नंबरों के साथ भी काम करता है:

 <पी> आप अपने मेट्रिक्स में टैग जोड़ सकते हैं. StatsD सर्वर संदेश के अंत में वैकल्पिक टैग का समर्थन करता है:

<पी> हम एक ही संदेश में कई टैग लगा सकते हैं और बाद में फ़िल्टर करने के लिए मान निर्दिष्ट कर सकते हैं:

 <पी> हम थोड़ी देर में AppSignal में डेटा देखना सीखेंगे।

वाद्ययंत्र भाषाएँ

<पी> StatsD सर्वर किसी भी भाषा के साथ संगत है जो UDP पैकेट भेज सकता है। आइए कुछ उदाहरण देखें।

<पी> डेटा माइनिंग और मशीन लर्निंग के लिए पायथन एक लोकप्रिय भाषा है। हम बिल्ड-इन socket का उपयोग करके पायथन अनुप्रयोगों में इंस्ट्रूमेंटेशन जोड़ सकते हैं पुस्तकालय:

 <पी> हम java.net के साथ जावा में समान परिणाम प्राप्त कर सकते हैं पुस्तकालय:

 <पी> PHP एक अविश्वसनीय रूप से लोकप्रिय भाषा का एक और उदाहरण है। हम socket_sendto के साथ यूडीपी पैकेट भेज सकते हैं :

 

StatsD क्लाइंट

<पी> अब तक, हमने प्रत्येक भाषा में अंतर्निहित नेटवर्किंग क्षमताओं का उपयोग किया है। लेकिन और भी बहुत कुछ है. कई भाषाओं और उत्पादों में तृतीय-पक्ष स्टैट्सडी क्लाइंट या ऐडऑन शामिल हैं। किसी भी स्टेट्सडी-अनुपालक क्लाइंट को काम करना चाहिए, कम से कम समर्थित डेटा प्रकारों के लिए। आप StatsD प्रोजेक्ट विकि पर ग्राहकों की सूची पा सकते हैं।

AppSignal में होस्ट डेटा देखना

<पी> होस्ट मेट्रिक्स डैशबोर्ड आपकी मशीन के संसाधन उपयोग को दर्शाता है:

<पी> इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

<पी> AppSignal स्टैंडअलोन एजेंट चलाने वाली प्रत्येक मशीन के लिए एक प्रविष्टि जोड़ता है।

<पी> इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

<पी> डैशबोर्ड लोड और सीपीयू औसत डिस्क, नेटवर्क, मेमोरी और स्वैप उपयोग दिखाता है:

<पी> इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

<पी> इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

डैशबोर्ड बनाना

<पी> AppSignal आपके द्वारा भेजे गए StatsD मान के लिए स्वचालित रूप से डैशबोर्ड उत्पन्न नहीं करता है—आपको इसके लिए कस्टम डैशबोर्ड बनाने की आवश्यकता होगी।

<पी> सबसे पहले, डैशबोर्ड जोड़ें पर क्लिक करें डैशबोर्ड मेनू के अंतर्गत:

<पी> इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

<पी> डैशबोर्ड को एक नाम दें:

<पी> इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

<पी> ग्राफ़ जोड़ें पर क्लिक करना बटन ग्राफ़ बिल्डर दिखाता है:

<पी> इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

<पी> ग्राफ़ को एक नाम दें और मीट्रिक जोड़ें पर क्लिक करें :

<पी> इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

<पी> मेनू से वह मीट्रिक चुनें जिसमें आपकी रुचि है।

<पी> इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

<पी> वैकल्पिक रूप से, फ़िल्टर करने के लिए टैग का उपयोग करें:

<पी> इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

<पी> इसके बाद, अवलोकन पर वापस जाएं पर क्लिक करें . आप यह पता लगाने के लिए अलग-अलग ग्राफ़ प्रकार और मूल्य इकाइयों को आज़माना चाह सकते हैं कि आप जिस डेटा का प्रतिनिधित्व करना चाहते हैं उसमें से कौन सा सबसे उपयुक्त है।

<पी> क्षेत्र ग्राफ़ के साथ समय डेटा बेहतर दिखता है क्योंकि माध्य और प्रतिशतक अधिक स्पष्ट रूप से दिखाए जाते हैं।

<पी> इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

<पी> लाइन ग्राफ़ काउंटरों और गेजों के लिए बहुत अच्छा काम करते हैं।

<पी> इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

<पी> एक बार जब आप परिणाम से खुश हो जाएं, तो ग्राफ़ बनाएं पर क्लिक करें .

<पी> इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

<पी> ध्यान दें कि यदि आपके पास Node.js, या आपके रूबी (ऑन रेल्स) APM या एलिक्सिर APM के लिए आपके प्रदर्शन निगरानी उपकरण (APM) के रूप में AppSignal सेट है, तो आप किसी अन्य स्वचालित रूप से उपकरणित या मापे गए मेट्रिक्स के लिए एक डैशबोर्ड भी जोड़ सकते हैं।

समापन

<पी> हमने सीखा है कि आपकी मशीनों और सैटेलाइट कोड को देखने के लिए ऐपसिग्नल के स्टैंडअलोन सर्वर का उपयोग कैसे करें। इसके अंतर्निहित StatsD सर्वर के साथ, आप मनमाना प्रदर्शन डेटा रिकॉर्ड कर सकते हैं और किसी भी प्रक्रिया को लिख सकते हैं।

<पी> स्टैंडअलोन एजेंट का उपयोग करने के बारे में अधिक जानने के लिए निम्नलिखित लिंक देखें:

  • StatsD संदर्भ.
  • कस्टम मेट्रिक्स कैसे भेजें।
  • AppSignal में डैशबोर्ड बनाना।
  • स्टैंडअलोन एजेंट काफ्का समस्या की पहचान करना और उसका समाधान करना।
इन्फ्रास्ट्रक्चर दृश्यता को उन्नत करें:स्टैट्सडी और ऐपसिग्नल के स्टैंडअलोन एजेंट के साथ किसी भी सिस्टम की निगरानी करना

टॉमस फर्नांडीज

<पी> हमारे अतिथि लेखक टॉमस ने आईबीएम में काम करते हुए 10 साल बिताए, जहां उन्होंने सब कुछ किया - विकास, सेवा वितरण, डेटाबेस प्रशासन और क्लाउड इंजीनियरिंग। वह अब एक स्वतंत्र सलाहकार और तकनीकी लेखक हैं।

<पी> टॉमस फर्नांडीज

द्वारा सभी लेख
  1. सीएसएस के साथ स्प्लिट बटन ड्रॉपडाउन कैसे बनाएं? सीएसएस के साथ स्प्लिट बटन ड्रॉपडाउन कैसे बनाएं?

    CSS के साथ स्प्लिट बटन ड्रॉपडाउन बनाने के लिए निम्नलिखित कोड है - उदाहरण <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1" /> <style> body {    font-family: "Lucida Sans", "Luci

  1. पायथन में विरासत पायथन में विरासत

    इस लेख में, हम पायथन 3.x में इनहेरिटेंस और एक्सटेंडिंग क्लासेस सीखेंगे। या पहले। वंशानुक्रम वास्तविक दुनिया के संबंधों का अच्छी तरह से प्रतिनिधित्व करता है, पुन:प्रयोज्य प्रदान करता है और पारगमन का समर्थन करता है। यह तेजी से विकास समय, आसान रखरखाव और विस्तार में आसान प्रदान करता है। वंशानुक्रम को

  1. एचटीएमएल डोम इनपुट डेटाटाइमस्थानीय नाम संपत्ति एचटीएमएल डोम इनपुट डेटाटाइमस्थानीय नाम संपत्ति

    HTML DOM इनपुट डेटाटाइमलोकल नाम प्रॉपर्टी एक स्ट्रिंग लौटाती है, जो इनपुट डेटाटाइमलोकल की नाम विशेषता का मान है। उपयोगकर्ता इसे एक नई स्ट्रिंग पर भी सेट कर सकता है। सिंटैक्स निम्नलिखित वाक्य रचना है - स्ट्रिंग मान लौटाना inputDatetimeLocalObject.name सेटिंग नाम एक स्ट्रिंग मान के लिए विशेषता in