निगरानी

परफ़ॉर्मेंस ऑप्टिमाइज़ेशन की प्रोसेस, मुख्य मेट्रिक की पहचान करने से शुरू होती है. आम तौर पर, ये मेट्रिक इंतज़ार के समय और थ्रूपुट से जुड़ी होती हैं. इन मेट्रिक को कैप्चर और ट्रैक करने के लिए निगरानी की सुविधा जोड़ने से, ऐप्लिकेशन की कमजोरियों का पता चलता है. मेट्रिक की मदद से, परफ़ॉर्मेंस मेट्रिक को बेहतर बनाने के लिए ऑप्टिमाइज़ेशन किया जा सकता है.

इसके अलावा, मॉनिटरिंग के कई टूल की मदद से, अपनी मेट्रिक के लिए सूचनाएं सेट अप की जा सकती हैं, ताकि तय थ्रेशोल्ड पूरा होने पर आपको सूचना मिल सके. उदाहरण के लिए, आपके पास यह सूचना पाने के लिए सूचना सेट अप करने का विकल्प है कि अनुरोध पूरा न होने का प्रतिशत, सामान्य लेवल से x% से ज़्यादा होने पर आपको सूचना दी जाए. मॉनिटरिंग टूल की मदद से, यह पता लगाया जा सकता है कि सामान्य परफ़ॉर्मेंस कैसी होती है. साथ ही, इंतज़ार का समय, गड़बड़ी की संख्या, और अन्य मुख्य मेट्रिक में असामान्य स्पाइक का पता लगाया जा सकता है. इन मेट्रिक को मॉनिटर करना, कारोबार के लिए अहम समयावधि के दौरान या नए कोड को प्रोडक्शन में भेजने के बाद खास तौर पर ज़रूरी होता है.

इंतज़ार का समय बताने वाली मेट्रिक की पहचान करना

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

ट्रैक करने के लिए सुझाई गई मेट्रिक में ये शामिल हैं:

  • अनुरोध की अवधि
  • सबसिस्टम के हिसाब से अनुरोध की अवधि (जैसे, एपीआई कॉल)
  • नौकरी की अवधि

थ्रूपुट मेट्रिक की पहचान करना

थ्रूपुट, किसी तय समयावधि में किए गए अनुरोधों की कुल संख्या को मेज़र करता है. सबसिस्टम के इंतज़ार के समय से, थ्रूपुट पर असर पड़ सकता है. इसलिए, थ्रूपुट को बेहतर बनाने के लिए, आपको इंतज़ार के समय को ऑप्टिमाइज़ करना पड़ सकता है.

यहां ट्रैक करने के लिए कुछ मेट्रिक के सुझाव दिए गए हैं:

  • क्वेरी प्रति सेकंड
  • हर सेकंड ट्रांसफ़र किए गए डेटा का साइज़
  • हर सेकंड में I/O ऑपरेशन की संख्या
  • संसाधनों के इस्तेमाल की जानकारी, जैसे कि सीपीयू या मेमोरी का इस्तेमाल
  • प्रोसेसिंग बैकलॉग का साइज़, जैसे कि pub/sub या थ्रेड की संख्या

सिर्फ़ माध्य नहीं

परफ़ॉर्मेंस को मेज़र करने में एक आम गलती यह है कि सिर्फ़ औसत (औसत) के मामले को देखा जाता है. यह जानकारी काम की होती है, लेकिन इससे इंतज़ार के समय के डिस्ट्रिब्यूशन के बारे में अहम जानकारी नहीं मिलती. परफ़ॉर्मेंस के प्रतिशत को ट्रैक करने के लिए, एक बेहतर मेट्रिक है. उदाहरण के लिए, किसी मेट्रिक के लिए 50वां/75वां/90वां/99वां प्रतिशत.

आम तौर पर, ऑप्टिमाइज़ेशन दो चरणों में किया जा सकता है. सबसे पहले, 90वें प्रतिशताइल के इंतज़ार के समय के लिए ऑप्टिमाइज़ करें. इसके बाद, 99वें प्रतिशतल को ध्यान में रखें. इसे टेल लैटेंसी भी कहा जाता है. यह अनुरोधों का वह छोटा हिस्सा होता है जिसे पूरा होने में काफ़ी ज़्यादा समय लगता है.

ज़्यादा जानकारी वाले नतीजों के लिए, सर्वर-साइड मॉनिटरिंग

आम तौर पर, मेट्रिक ट्रैक करने के लिए सर्वर-साइड प्रोफ़ाइलिंग को प्राथमिकता दी जाती है. आम तौर पर, सर्वर साइड को इंस्ट्रूमेंट करना बहुत आसान होता है. इससे ज़्यादा जानकारी वाले डेटा को ऐक्सेस किया जा सकता है. साथ ही, कनेक्टिविटी से जुड़ी समस्याओं से भी कम परेशानी होती है.

एंड-टू-एंड विज़िबिलिटी के लिए ब्राउज़र की निगरानी करना

ब्राउज़र की प्रोफ़ाइलिंग से, असली उपयोगकर्ता अनुभव के बारे में ज़्यादा जानकारी मिल सकती है. इससे यह पता चल सकता है कि किन पेजों के अनुरोध धीमे हैं. इसके बाद, ज़्यादा विश्लेषण के लिए, इन्हें सर्वर साइड मॉनिटरिंग से जोड़ा जा सकता है.

Google Analytics, पेज लोड होने में लगने वाले समय की रिपोर्ट में, पेज लोड होने में लगने वाले समय की मॉनिटरिंग की सुविधा देता है. इससे आपकी साइट पर उपयोगकर्ता अनुभव को समझने के लिए, कई काम के व्यू मिलते हैं. इनमें ये शामिल हैं:

  • पेज लोड होने में लगने वाला समय
  • रीडायरेक्ट लोड होने में लगने वाला समय
  • सर्वर से जवाब मिलने में लगने वाला समय

क्लाउड में मॉनिटर करना

अपने ऐप्लिकेशन की परफ़ॉर्मेंस मेट्रिक को कैप्चर और मॉनिटर करने के लिए, कई टूल का इस्तेमाल किया जा सकता है. उदाहरण के लिए, Google Cloud लॉगिंग का इस्तेमाल करके, Google Cloud प्रोजेक्ट में परफ़ॉर्मेंस मेट्रिक को लॉग किया जा सकता है. इसके बाद, लॉग की गई मेट्रिक को मॉनिटर और सेगमेंट करने के लिए, Google Cloud मॉनिटरिंग में डैशबोर्ड सेट अप किए जा सकते हैं.

Python क्लाइंट लाइब्रेरी में कस्टम इंटरसेप्टर से, Google Cloud Logging में लॉग करने के उदाहरण के लिए, लॉगिंग गाइड देखें. Google Cloud में मौजूद उस डेटा की मदद से, लॉग किए गए डेटा के ऊपर मेट्रिक बनाई जा सकती हैं. इससे, Google Cloud मॉनिटरिंग की मदद से अपने ऐप्लिकेशन की परफ़ॉर्मेंस के बारे में जानकारी मिलती है. Google Cloud Logging को भेजे गए लॉग का इस्तेमाल करके मेट्रिक बनाने के लिए, उपयोगकर्ता के तय किए गए लॉग-आधारित मेट्रिक के लिए गाइड का पालन करें.

इसके अलावा, अपने कोड में मेट्रिक तय करने के लिए, मॉनिटरिंग क्लाइंट लाइब्रेरी का इस्तेमाल किया जा सकता है. साथ ही, उन्हें लॉग से अलग करके सीधे मॉनिटरिंग में भेजा जा सकता है.

लॉग पर आधारित मेट्रिक का उदाहरण

मान लें कि आपको अपने ऐप्लिकेशन में गड़बड़ी की दरों को बेहतर तरीके से समझने के लिए, is_fault वैल्यू को मॉनिटर करना है. आपके पास लॉग से is_fault वैल्यू को काउंटर मेट्रिक ErrorCount में निकालने का विकल्प है.

मेट्रिक कॉन्फ़िगरेशन

मेट्रिक में फ़िल्टर और लेबल

Cloud Logging में, लेबल की मदद से, लॉग में मौजूद अन्य डेटा के आधार पर अपनी मेट्रिक को कैटगरी में बांटा जा सकता है. Google Ads API के तरीके से, गड़बड़ी की संख्या को अलग-अलग कैटगरी में बांटने का तरीका देखने के लिए, Cloud Logging को भेजे गए method फ़ील्ड के लिए लेबल कॉन्फ़िगर किया जा सकता है.

ErrorCount मेट्रिक और Method लेबल को कॉन्फ़िगर करने के बाद, Method के हिसाब से ग्रुप की गई ErrorCount को मॉनिटर करने के लिए, मॉनिटरिंग डैशबोर्ड में नया चार्ट बनाएं.

ErrorCount डैशबोर्ड

चेतावनियां

Cloud Monitoring और अन्य टूल में, अलर्ट की नीतियों को कॉन्फ़िगर किया जा सकता है. इन नीतियों से यह तय होता है कि आपकी मेट्रिक से अलर्ट कब और कैसे ट्रिगर होने चाहिए. Cloud निगरानी की सूचनाएं सेट अप करने के लिए, सूचनाओं की गाइड में दिए गए निर्देशों का पालन करें.