स्मार्ट होम में रुकावट की निगरानी करना

1. शुरू करने से पहले

जैसा कि हमने स्मार्ट होम कोड को डीबग करना सेक्शन में बताया है, हम आपके स्मार्ट होम प्रोजेक्ट के लिए मेट्रिक और लॉग पब्लिश कर रहे हैं. मेट्रिक से आपको यह पता लगाने में मदद मिलती है कि स्मार्ट होम ऐक्शन में कहां समस्या आ रही है. साथ ही, इन समस्याओं को गहराई से हल करने के लिए लॉग मददगार होते हैं.

dd44868a4ff2df6e.png

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

ज़रूरी शर्तें

आपको इनके बारे में जानकारी मिलेगी

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

2. कार्यप्रदर्शन की निगरानी

Google स्मार्ट होम नेटवर्क के साथ इंटिग्रेशन को सफल बनाने के लिए, परफ़ॉर्मेंस पर नज़र रखना ज़रूरी है. हम Google Cloud Platform पर, स्मार्ट होम डेवलपर को निगरानी करने वाले टूल का सेट उपलब्ध करा रहे हैं. अपने प्रोजेक्ट की परफ़ॉर्मेंस के बारे में जानने के लिए, ये टूल इस्तेमाल किए जा सकते हैं.

डैशबोर्ड ऐक्सेस करना

अपने डेटा को ऐक्सेस करने के लिए, सबसे पहले Google Home के डैशबोर्ड देखें. इसके लिए, Google Cloud Console में लॉग इन करें और ऑपरेशन > निगरानी > डैशबोर्ड पर जाएं. आपको कई डैशबोर्ड दिखेंगे और स्मार्ट होम के लिए डैशबोर्ड, Google Home Analytics के प्रीफ़िक्स के साथ होंगे.

317697e52ced2437.png

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

इनमें से कोई भी डैशबोर्ड खोलने पर, आपको कुछ ऐसा दिखेगा:

f8bfd69286c569a4.png

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

स्मार्ट होम से जुड़ी कार्रवाइयों की परफ़ॉर्मेंस का आकलन करने के लिए, तीन चार्ट बेहद ज़रूरी हैं:

f511fafd3aaaa1eb.png

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

ध्यान दें कि Google Home Analytics के डैशबोर्ड में आपको दिखने वाले चार्ट वाला डिफ़ॉल्ट व्यू, सिर्फ़ एक व्यू है. इसे हमने स्मार्ट होम मेट्रिक के डेटा का इस्तेमाल करके, आपके प्रोजेक्ट के लिए बनाया है. मेट्रिक एक्सप्लोरर का इस्तेमाल करके, एक जैसी मेट्रिक से अपने चार्ट भी बनाए जा सकते हैं और उन्हें कस्टम डैशबोर्ड में सेव किया जा सकता है.

मेट्रिक एक्सप्लोरर

मेट्रिक्स एक्सप्लोरर आपके प्रोजेक्ट के डेटासेट के क्रॉस-सेक्शन को विज़ुअलाइज़ करने वाला टूल है. इस टूल को Google Cloud Console में ऐक्सेस किया जा सकता है. इसके लिए, ऑपरेशन > निगरानी > मेट्रिक एक्सप्लोरर पर जाएं.

Google Cloud कई तरह की मेट्रिक उपलब्ध कराता है. इनमें कुछ मेट्रिक, स्मार्ट होम से जुड़ी नहीं होती हैं. स्मार्ट होम के लिए हम जो मेट्रिक उपलब्ध कराते हैं वे "actions.googleapis.com/smarthome_action/..." संसाधन में मौजूद होती हैं. इन्हें मेट्रिक चुनने वाले बॉक्स में "smarthome" टाइप करके, आसानी से खोजा जा सकता है.

538d851edfd34764.png

"स्मार्टहोम" खोजने पर, वे सभी स्मार्ट होम मेट्रिक दिखेंगी जिन्हें हमने आपके प्रोजेक्ट के लिए उपलब्ध कराया है. हमारे दस्तावेज़ में निगरानी और लॉगिंग पेजों पर जाकर, हर मेट्रिक के बारे में ज़्यादा जानकारी पाई जा सकती है.

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

इस मेट्रिक को चुनने से एक स्क्रीन बनेगी, जो नीचे दी गई जानकारी से मिलती-जुलती हर डेटा बकेट दिखाएगी:

b1c18141d15a0e09.png

इसका मतलब है कि इस मेट्रिक में मौजूद डेटा लेबल के हर कॉम्बिनेशन के लिए, एक बकेट मौजूद होती है, जो पिछले और मौजूदा समय के अंतराल के बीच के बदलाव (डेल्टा) को रिकॉर्ड करती है. अपने मुताबिक व्यू डेटा स्लाइस पाने के लिए, इन बकेट को ग्रुप में बांटा या फ़िल्टर किया जा सकता है. इसके अलावा, डेटा अलाइनमेंट फ़ंक्शन (DELTA, MEAN, MEDIAN, SUM) की मदद से चुने गए समय के अंतरालों में अलाइन होता है. जब तक ज़रूरत न हो, तब तक आम तौर पर डेल्टा मेट्रिक के साथ डेल्टा अलाइनमेंट का इस्तेमाल किया जाता है.

मेट्रिक एक्सप्लोरर का इस्तेमाल करके, Google Home Analytics के डैशबोर्ड में उपलब्ध ज़्यादातर चार्ट बनाए जा सकते हैं. साथ ही, कस्टम डैशबोर्ड में अपने चार्ट को बाद में ऐक्सेस करने के लिए सेव किया जा सकता है. रेशियो चार्ट जैसे ज़्यादा कॉम्प्लेक्स व्यू पाने के लिए, आपको MQL - मॉनिटरिंग क्वेरी लैंग्वेज का इस्तेमाल करना होगा.

3. सफलता मेट्रिक्स

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

सफलता दर

आपके सभी इंटिग्रेशन के लिए, सक्सेस रेट का हिसाब लगाने के लिए, सभी अनुरोधों के सफल अनुरोधों की संख्या को भाग दिया जाता है. इसे Google Home Analytics के डैशबोर्ड में, ग्राहक को पूरा करने की दर वाले चार्ट से ऐक्सेस किया जा सकता है.

55ea8930fbf48d9e.png

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

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

कॉन्फ़िडेंस मेट्रिक

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

ab467a1777281526.png

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

बीच के सभी मामलों के लिए, यह मेट्रिक 1.0 (पूरा भरोसा है कि कोई आउटेज नहीं है) और 0.0 (ज़्यादा से ज़्यादा भरोसा है कि कुछ समय के लिए कोई आउटेज है) के बीच की वैल्यू देती है.

इसलिए, अगले सेक्शन में सूचना सेट करने के दौरान, हमारा सुझाव है कि वैल्यू को थ्रेशोल्ड के तौर पर 0.5 पर सेट करें. यह वैल्यू दो स्टैंडर्ड डेविएशन या 5% कम, जो भी ज़्यादा हो उसके हिसाब से होगी.

4. अलर्ट सेट करना

अगले चरण में, पिछले सेक्शन में सीखी गई सभी जानकारी का इस्तेमाल करके अपने प्रोजेक्ट की सूचनाएं सेट अप करें.

चेतावनी देने से जुड़ी नीति बनाना

Google Cloud Platform पर, अपने-आप मिलने वाली सूचनाओं की सुविधा, सूचना देने की नीतियों से सेट की गई है. साइड मेन्यू में जाकर, ऑपरेशन > निगरानी > चेतावनी टैब से, चेतावनी की नीतियों को ऐक्सेस किया जा सकता है. +नीति बनाएं विकल्प को चुनकर, सूचना देने से जुड़ी नई नीति बनाई जा सकती है. इससे आपको सूचना देने से जुड़ी नीति बनाने वाली स्क्रीन दिखेगी:

6e417d88c2274b3d.png

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

df1ccf7da741e1c7.png

टारगेट के लिए, वह कॉन्फ़िडेंस मेट्रिक चुनें जिसके बारे में हमने पिछले सेक्शन में बताया था. पक्का करें कि इस मेट्रिक (बेहतर विकल्प दिखाएं > अलाइनर) का इस्तेमाल करके, अलाइनर को डेल्टा पर सेट किया गया हो. इसके बाद, सूचना देने वाली शर्त को कॉन्फ़िगर करें और इन सेटिंग का इस्तेमाल करें:

4192e0f4ea00dd28.png

स्थिति तब ट्रिगर होती है, जब - यह मुख्य कॉन्फ़िगरेशन है जो यह तय करता है कि सूचनाएं कब ट्रिगर करनी हैं. किसी टाइम सीरीज़ का उल्लंघन होने पर चुनने पर, हम अपनी मेट्रिक के लिए एक थ्रेशोल्ड सेट कर सकते हैं. साथ ही, यह मॉनिटर कर सकते हैं कि वैल्यू को क्रॉस किया गया है या नहीं.

शर्त - हम चाहते हैं कि वैल्यू के थ्रेशोल्ड से कम होने पर अलर्ट ट्रिगर हो जाए, ताकि हम इसे कम है पर सेट कर दें. हमारी मेट्रिक के साथ, 1.0 का मतलब है कि इंटिग्रेशन ठीक से काम कर रहा है और 0.0 का मतलब है कि इसमें कोई रुकावट नहीं है.

थ्रेशोल्ड - जब यह वैल्यू 0.5 पर सेट होती है, तब सबसे अच्छे नतीजे दिखाने के लिए, हमने कॉन्फ़िडेंस मेट्रिक बनाई है. अगर आपको बार-बार सूचनाएं पाने के साथ-साथ, कम घटनाओं की सूचना चाहिए, तो इस वैल्यू को (ज़्यादा से ज़्यादा 1.0) बढ़ाया जा सकता है. अगर आपको कम चेतावनियां चाहिए, तो सिर्फ़ ज़्यादा गंभीर समस्याओं के लिए, इस वैल्यू को कम से कम 0.0 करें.

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

शर्त जोड़ने के बाद, सूचना का चैनल चुनें. ईमेल सूचना, सूचना पाने का सबसे आसान तरीका है. सूचना चैनल ड्रॉपडाउन में जाकर, कोई ईमेल चुना जा सकता है:

3cc10629830e7f13.png

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

आखिरी चरण, सूचना को कोई नाम देना है. इसके बाद, उसे ऐसा कोई भी दस्तावेज़ जोड़ना है जिसे आपको सूचनाओं में शामिल करना हो.

686fb1c537fee10.png

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

सेव हो जाने के बाद, सूचना देने से जुड़ी आपकी नीति, सूचना वाले पेज पर मौजूद नीति सेक्शन में दिखेगी.

c71a001e4df035ee.png

5. रुकावटों को कम करना

सूचनाएं सेट अप करने के बाद, आपको अपने नोटिफ़िकेशन चैनल से कुछ समय के लिए सेवा उपलब्ध न होने की सूचना दी जाएगी. साथ ही, चेतावनी वाले पेज पर एक घटना की एंट्री बनाई जाएगी.

सूचनाएं पाना

इस कोडलैब में हमने, सूचना देने वाला एक चैनल ईमेल किया था. हो सकता है कि एक बार सेट कर लेने के बाद, आपको कोई भी सूचना न मिले (कोई रुकावट न हो), लेकिन अगर आप ऐसा करते हैं, तो सूचना कुछ इस तरह दिखेगी:

43217b0a145c2cd.png

ध्यान दें कि सूचना देने वाली सूचना में, वह वैल्यू दिखती है जो आपके तय किए गए थ्रेशोल्ड को पार करती है. साथ ही, एक टाइमस्टैंप भी दिखता है, जिसमें बताया जाता है कि घटना पहली बार कब शुरू हुई.

मामलों की निगरानी करना

कोई घटना होने पर, उसकी गिनती चेतावनी वाले पेज पर मौजूद घटना सेक्शन में भी की जाएगी.

fdd883a9604ed981.png

किसी समस्या के बारे में जानकारी पाने के लिए, उस पर क्लिक करें. जैसे, समस्या कितनी देर तक हुई या वह कितनी गंभीर थी.

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

6. बधाई हो

17d485868a6771bc.png

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

अगले चरण

इस कोडलैब (कोड बनाना सीखना) को तैयार करते हुए, नीचे दिए गए तरीके आज़माएं और दूसरे संसाधन एक्सप्लोर करें:

  • इस कोडलैब में आपने जो कुछ भी सीखा है उसे अपने प्रोजेक्ट के लिए उपलब्ध कराई गई अन्य मेट्रिक के साथ मिला सकते हैं. निगरानी पेज के इस्तेमाल की जा सकने वाली मेट्रिक सेक्शन में, उपलब्ध मेट्रिक की पूरी सूची देखी जा सकती है.
  • सूचनाओं के लिए, सूचना देने वाले दूसरी तरह के चैनलों को एक्सप्लोर करें. इनके बारे में Google Cloud Platform के दस्तावेज़ में, सूचना के विकल्प पेज पर बताया गया है.