किसी भी आउटेज संचार के साथ, एक गैर-तकनीकी पाठक को मुख्य रूप से समझना होगा:
- कितना लंबा था ये?
- कितना बुरा था?
अमेज़ॅन क्लाउडवॉच मैट्रिक्स SQS कतारों के लिए निम्नलिखित मीट्रिक प्रदान करता है जो इन सवालों के जवाब देने में मदद कर सकते हैं:
- NumberOfMessagesSent: एक कतार में जोड़े गए संदेशों की संख्या।
- NumberOfMessagesReceived: ReceiveMessage API कार्रवाई के लिए कॉल द्वारा लौटाए गए संदेशों की संख्या।
- ApproximateNumberOfMessagesVoice: कतार से पुनर्प्राप्ति के लिए उपलब्ध संदेशों की संख्या।
जब सही ढंग से रेखांकन किया जाता है, तो ये मैट्रिक्स कतार प्रसंस्करण देरी का वर्णन करने में शक्तिशाली दृश्य सहायक हो सकते हैं। यहाँ एक उदाहरण से कुछ उदाहरण दिए गए हैं जिनका मैंने अनुभव किया कि कतार संदेशों को संसाधित करने की नौकरी की क्षमता बुरी तरह से कम हो गई थी:
NumberOfMessagesSent और NumberOfMessagesReceived
- ग्राफ प्रकार: लाइन ग्राफ
- सांख्यिकी: योग
- अवधि: 5-मिनट
यह भेजे और प्राप्त किए गए संदेशों के बीच के विपरीत को रेखांकन करता है, जो कि अलग करने में मदद करता है कि कौन सा प्रसंस्करण घटक देरी के लिए जिम्मेदार है। इस ग्राफ़ में, प्राप्त मीट्रिक नाटकीय रूप से कम हो जाती है, जबकि भेजे गए मीट्रिक अपनी सामान्य प्रवृत्ति पर जारी रहता है, इसलिए हम यह अनुमान लगा सकते हैं कि समस्या कतार लेखन घटक के बजाय कतार पढ़ने वाले घटक में निहित है।
क्या यह उत्तर कब तक / कितनी बुरी घटना थी? हाँ; समय के साथ प्रभावित प्रक्रियाओं का वर्णन करता है।
NumberOfMessagesReceived और ApproximateNumberOfMessagesVoice
- ग्राफ प्रकार: स्टैक्ड एरिया ग्राफ
- सांख्यिकी: योग
- अवधि: 5-मिनट
यह प्राप्त संदेशों के शीर्ष पर कतार की गहराई को रेखांकन करता है, जो यह दिखाने में मदद करता है कि कतार कितनी दूर तक गई और यह कैसे पुनः प्राप्त हुई। इस ग्राफ में, हम देख सकते हैं कि कतार की रीडिंग कंपोनेंट में समस्या होने पर कतार की गहराई नाटकीय रूप से बढ़ जाती है, और जब कतार रीडिंग घटक फिर से संदेश पढ़ना शुरू करता है, तो रिकवर करना शुरू कर देता है।
क्या यह उत्तर कब तक / कितनी बुरी घटना थी? हाँ; समय के साथ प्रभावित संदेशों का वर्णन करता है।
रेखांकन चर्चा
दोनों रेखांकन में, कतार के ओवरलैप होने पर और लाइनों के विचलन होने पर अस्वस्थ होने पर कतार प्रसंस्करण को आमतौर पर स्वस्थ माना जा सकता है। यह एक गैर-तकनीकी टीम के सदस्य को पढ़ाने का एक आसान पैटर्न है, और इन ग्राफ़ों के साथ प्रस्तुत किए जाने पर समस्याएं कहां और कैसे होती हैं, इसे शीघ्रता से समाप्त करने में उनकी मदद कर सकते हैं।
ग्राफ़ में विशिष्ट बिंदुओं को और अधिक संप्रेषित करने के लिए, आप उन्हें केवल एनोटेट कर सकते हैं:
रेखांकन युक्तियाँ:
- लेबल इकाइयों और कुल्हाड़ियों।
- रेखांकन में मीट्रिक मिलान के लिए लगातार रंगों का उपयोग करें। ध्यान दें कि NumberOfMessagesReceived दोनों ग्राफ़ में नारंगी है; यह विभिन्न रेखांकन में एक ही मीट्रिक की कल्पना करने में मदद करेगा।
- लंबवत संरेखित ग्राफ़ जो समान मैट्रिक्स का वर्णन करते हैं ताकि वे समय के साथ तुलना करना आसान हो।
नोट: मैंने इन ग्राफ़ को StackExchange पर प्रस्तुति के लिए स्वरूपित किया है, इसलिए ये आवश्यक नहीं हैं कि मैं उन्हें आउटेज पोस्टमार्टम में कैसे प्रस्तुत करूँ। मैंने स्पष्ट रूप से बाईं अक्ष से मानों को हटा दिया है ताकि उन्हें StackExchange से अस्पष्ट किया जा सके; आप उन्हें अपने पोस्टमार्टम में रखना चाहते हैं।
अतिरिक्त सुझाव
- अपनी टीम को सशक्त बनाएं: अपने टीम के सदस्यों को इन ग्राफ़ को पढ़ने के लिए प्रशिक्षित करने के बाद, कोई कारण नहीं है कि उन्हें छिपा कर रखें। CloudWatch डैशबोर्ड स्थापित करने पर विचार करें और अपने गैर-तकनीकी टीम के सदस्यों को CloudWatch तक केवल IAM पहुँच प्रदान करें , ताकि वे इन ग्राफ़ को कभी भी देख सकें।
- अधिसूचनाएँ सेट करें: यदि यह कुछ सहमति-योग्य उच्च मानों से अधिक हो, और संभावित समस्याओं की सूचना देने के लिए टीम के सदस्यों की सदस्यता लें, तो लगभग अनुमानित मान के आधार पर क्लाउडवॉच अलार्म स्थापित करने पर विचार करें । क्लाउडवॉच अलार्म का वर्णन फ़ील्ड है जो अधिसूचना ईमेल के साथ भेजा जाता है - अपने गैर-तकनीकी सदस्यों को अलार्म को प्रसारित करने में मदद करने के लिए मानव-पठनीय विवरण शामिल करना सुनिश्चित करें।
- : अन्य डाटा का अन्वेषण प्रति एव्जेनी की टिप्पणी , क्या CloudWatch प्रदान करता है परे अन्य डेटा का पता लगाने और आप अपनी टीम को उस डेटा को व्यक्त करने के बारे में सोचते हैं। हिस्टोग्राम बनाने के लिए कतार में संदेश जीवनकाल का उपयोग करने का उनका उदाहरण इस रचनात्मक सोच का एक बड़ा उदाहरण है, और आपके आवेदन में संदेश भेजने और संदेश प्राप्त करने दोनों समय लॉग इन करके पूरा किया जा सकता है। आप SendiveMestage API प्रतिसाद के प्रत्येक कतार संदेश पर SentTimeStamp विशेषता के माध्यम से भेजा गया संदेश भेज सकते हैं । अधिक जानकारी यहाँ ।