Google Cloud आपको ऐसे टूल उपलब्ध कराता है जिनसे आप Google Cloud Monitoring की मदद से अपने प्रोजेक्ट की विश्वसनीयता पर नज़र रख सकते हैं. साथ ही, Google Cloud Logging गड़बड़ी लॉग की मदद से समस्याओं को डीबग कर सकते हैं. जब भी उपयोगकर्ता के इंटेंट को पूरा करते समय कोई गड़बड़ी होती है, तो Google Home Analytics पाइपलाइन आपकी मेट्रिक की उस गड़बड़ी को रिकॉर्ड करता है और आपके प्रोजेक्ट लॉग में गड़बड़ी वाला लॉग पब्लिश करता है.
गड़बड़ियों को ठीक करने के दो चरण होते हैं:
- स्मार्ट होम मेट्रिक से अपने प्रोजेक्ट की स्थिति पर नज़र रखें.
- गड़बड़ी के लॉग में गड़बड़ी की पूरी जानकारी देखकर, समस्याओं की जांच करें.
निगरानी से जुड़ी गड़बड़ियां
अपने प्रोजेक्ट की मेट्रिक ऐक्सेस करने के लिए, Google Cloud Monitoring dashboards का इस्तेमाल करें. यहां कुछ ऐसे मुख्य चार्ट दिए गए हैं जो खास तौर पर, क्वालिटी पर नज़र रखने और डीबग करने के लिए उपयोगी हैं:
- अपने प्रोजेक्ट की विश्वसनीयता पर नज़र रखने के बाद, शुरू होने वाला पहला चार्ट सफलता की दर चार्ट होता है. इस चार्ट में गिरावट आने का मतलब है कि आपके उपयोगकर्ताओं के कुछ हिस्से या पूरे उपयोगकर्ता आधार पर कुछ समय के लिए रुकावट आ रही है. हमारा सुझाव है कि आप प्रोजेक्ट में हुए हर बदलाव या अपडेट के बाद, इस चार्ट में किसी भी गड़बड़ी का पता लगाने के लिए, उसकी अच्छे से निगरानी करें.
- 95वां पर्सेंटाइल चार्ट से पता चलता है कि स्मार्ट होम ऐक्शन आपके उपयोगकर्ताओं के लिए कैसा परफ़ॉर्म कर रहा है. इस चार्ट में अचानक होने वाले उतार-चढ़ाव का मतलब है कि शायद आपके सिस्टम, अनुरोधों को पूरा नहीं कर पा रहे हैं. समय-समय पर इस चार्ट को देखते रहें, ताकि आपको किसी भी तरह के अनचाहे व्यवहार के बारे में पता चले.
- गड़बड़ी का ब्यौरा चार्ट तब सबसे ज़्यादा काम आते हैं, जब इंटिग्रेशन में समस्याओं को हल करने की बात आती है. सफलता के प्रतिशत वाले चार्ट में हाइलाइट की गई हर गड़बड़ी के लिए, गड़बड़ियों के ब्रेकडाउन में गड़बड़ी का एक कोड दिखता है. आप नीचे दी गई टेबल में, Google Home platform से फ़्लैग की गई गड़बड़ियां और उन गड़बड़ियों को ठीक करने का तरीका देख सकते हैं.
प्लैटफ़ॉर्म के गड़बड़ी कोड
यहां कुछ सामान्य गड़बड़ी कोड दिए गए हैं जो आपको अपने प्रोजेक्ट लॉग में दिख सकते हैं. इससे, Google Home platform में मिली समस्याओं की पहचान की जा सकती है. समस्या हल करने के बारे में जानकारी के लिए, कृपया नीचे दी गई टेबल देखें.
गड़बड़ी कोड | ब्यौरा |
---|---|
BACKEND_FAILURE_URL_ERROR |
Google को आपकी सेवा से 401 के अलावा, एचटीटीपी 4xx गड़बड़ी कोड मिला है.
अपने स्मार्ट होम सर्विस लॉग की जांच करने के लिए, GCP लॉग इन में requestId का इस्तेमाल करें.
|
BACKEND_FAILURE_URL_TIMEOUT |
आपकी सेवा से संपर्क करने की कोशिश करते समय, Google के अनुरोध का समय खत्म हो गया.
पुष्टि करें कि आपकी सेवा ऑनलाइन है, कनेक्शन स्वीकार किए जा रहे हैं, और उसकी क्षमता से ज़्यादा नहीं हैं. इसके अलावा, पुष्टि करें कि टारगेट डिवाइस चालू हो, ऑनलाइन हो, और सिंक हो. |
BACKEND_FAILURE_URL_UNREACHABLE |
Google को आपकी सेवा से एक HTTP 5xx गड़बड़ी कोड मिला है.
अपने स्मार्ट होम सर्विस लॉग की जांच करने के लिए, GCP लॉग इन में requestId का इस्तेमाल करें.
|
DEVICE_NOT_FOUND |
डिवाइस, पार्टनर सर्विस साइड पर मौजूद नहीं है.
आम तौर पर, इससे पता चलता है कि डेटा सिंक नहीं हो रहा है या रेस कंडिशन है. |
GAL_BAD_3P_RESPONSE |
अमान्य फ़ॉर्मैट या पेलोड में वैल्यू होने की वजह से, Google, खाता लिंक करने वाली आपकी सेवा से मिले रिस्पॉन्स को पार्स नहीं कर सकता.
खाता जोड़ने की सेवा में गड़बड़ी के लॉग की जांच करने के लिए, GCP लॉग में requestId का इस्तेमाल करें.
|
GAL_INTERNAL |
जब Google ने ऐक्सेस टोकन वापस पाने की कोशिश की,
तो Google की अंदरूनी गड़बड़ी हुई.
अगर आपको GCP लॉग करने में इस गड़बड़ी की दर बढ़ती हुई दिखती है, तो ज़्यादा जानकारी के लिए हमसे संपर्क करें. |
GAL_INVALID_ARGUMENT |
जब Google ने ऐक्सेस टोकन वापस पाने की कोशिश की,
तो Google की अंदरूनी गड़बड़ी हुई.
अगर आपको GCP लॉग करने में इस गड़बड़ी की दर बढ़ती हुई दिखती है, तो ज़्यादा जानकारी के लिए हमसे संपर्क करें. |
GAL_NOT_FOUND |
Google में सेव किए गए, उपयोगकर्ता के ऐक्सेस टोकन और रीफ़्रेश टोकन
अमान्य हो गए हैं और अब उन्हें रीफ़्रेश नहीं किया जा सकता. आपकी सेवा का इस्तेमाल जारी रखने के लिए, उपयोगकर्ता को
अपना खाता फिर से लिंक करना होगा.
अगर आपको GCP लॉग करने में इस गड़बड़ी की दर बढ़ती हुई दिखती है, तो ज़्यादा जानकारी के लिए हमसे संपर्क करें. |
GAL_PERMISSION_DENIED |
टोकन शेयर करने की अनुमति न होने पर,
Google की अंदरूनी गड़बड़ी हुई.
अगर आपको GCP लॉग करने में इस गड़बड़ी की दर बढ़ती हुई दिखती है, तो ज़्यादा जानकारी के लिए हमसे संपर्क करें. |
GAL_REFRESH_IN_PROGRESS |
उपयोगकर्ता के ऐक्सेस टोकन की समयसीमा खत्म हो गई है. साथ ही, इसे रीफ़्रेश करने की एक और कोशिश पहले से ही की जा रही है.
यह कोई समस्या नहीं है और न ही आपको कुछ करने की ज़रूरत है. |
INVALID_AUTH_TOKEN |
Google को आपकी सेवा से एचटीटीपी 401 गड़बड़ी कोड मिला है.
ऐक्सेस टोकन की समयसीमा खत्म नहीं हुई है, लेकिन आपकी सेवा ने इसे अमान्य कर दिया है. अपने स्मार्ट होम सर्विस लॉग की जांच करने के लिए, GCP लॉगिंग में requestId का इस्तेमाल करें.
|
INVALID_JSON |
JSON के रिस्पॉन्स को पार्स नहीं किया जा सकता या समझा नहीं जा सकता.
अमान्य सिंटैक्स का पता लगाने के लिए, अपने JSON रिस्पॉन्स के स्ट्रक्चर की जांच करें. जैसे, मेल न खाने वाले ब्रैकेट, शामिल न किए गए कॉमा, और अमान्य वर्ण. |
OPEN_AUTH_FAILURE |
उपयोगकर्ता के ऐक्सेस टोकन की समयसीमा खत्म हो गई है और Google उसे रीफ़्रेश नहीं कर पा रहा है या
Google को आपकी सेवा से एचटीटीपी 401 गड़बड़ी कोड मिला है.
अगर आपको इस कोड के इस्तेमाल में बढ़ोतरी दिखती है, तो देखें कि क्या आपको स्मार्ट होम इंटेंट से जुड़ी गड़बड़ियों की बढ़ी हुई दर भी दिखती है या टोकन के अनुरोधों को रीफ़्रेश करें. |
PARTNER_RESPONSE_INVALID_ERROR_CODE |
जवाब एक अनजान गड़बड़ी कोड को दिखाता है.
अगर आपके अनुरोध के जवाब में कोई गड़बड़ी दिखती है, तो पक्का करें कि आपने हमारे काम करने वाले गड़बड़ी कोड में से जो गड़बड़ी कोड दिया है उसका इस्तेमाल करें. |
PARTNER_RESPONSE_INVALID_PAYLOAD |
रिस्पॉन्स payload फ़ील्ड को JSON ऑब्जेक्ट के तौर पर पार्स नहीं किया जा सकता.
देखें कि आपके अनुरोध के जवाब में मौजूद पेलोड फ़ील्ड में, मेल खाने वाले ब्रैकेट मौजूद हैं या नहीं. साथ ही, यह भी देखें कि उन्हें सही तरीके से JSON फ़ील्ड के तौर पर बनाया गया है या नहीं. |
PARTNER_RESPONSE_INVALID_STATUS |
जवाब किसी स्टेटस की जानकारी नहीं देता या जवाब गलत होता है.
इंटेंट फ़ुलफ़िलमेंट के अनुरोधों के रिस्पॉन्स में, SUCCESS, OFFLINE, ERROR, EXCEPTIONS के साथ स्टेटस दिखना चाहिए. आपको
गड़बड़ियों और अपवादों से जुड़ी
समस्या को हल करने के बारे में ज़्यादा जानकारी मिल सकती है.
|
PARTNER_RESPONSE_MISSING_COMMANDS_AND_DEVICES |
अनुरोध में मौजूद एक या उससे ज़्यादा इंटेंट के जवाब में
कोई जानकारी मौजूद नहीं है.
पुष्टि करें कि आपका एक्ज़ीक्यूट करने का रिस्पॉन्स सही तरीके से बनाया गया हो और अनुरोध के सभी इंटेंट के नतीजे, आपके रिस्पॉन्स में मौजूद हों. |
PARTNER_RESPONSE_MISSING_DEVICE |
अनुरोध में मौजूद एक या उससे ज़्यादा डिवाइसों के लिए
जवाब मौजूद नहीं हैं.
पुष्टि करें कि आपका एक्ज़ीक्यूशन रिस्पॉन्स सही तरीके से बनाया गया हो और अनुरोध के सभी डिवाइस आईडी आपके जवाब में मौजूद हों. |
PARTNER_RESPONSE_MISSING_PAYLOAD |
जवाब में payload फ़ील्ड शामिल नहीं है.
अपने अनुरोध के जवाब में पेलोड फ़ील्ड शामिल करना न भूलें. एक्ज़ीक्यूशन का सही रिस्पॉन्स बनाने के तरीके के बारे में ज़्यादा जानें. |
PARTNER_RESPONSE_NOT_OBJECT |
रिस्पॉन्स को JSON ऑब्जेक्ट के तौर पर पार्स नहीं किया जा सकता.
अनुरोध के जवाब में सभी फ़ील्ड की जांच करें. इसमें, अनचाहे वर्णों, मेल न खाने वाले ब्रैकेट या फ़ॉर्मैट से जुड़ी गड़बड़ियों की जांच करें. ऐसा हो सकता है कि कुछ यूनिकोड वर्णों का इस्तेमाल न किया जा सके. यह भी पक्का करें कि आपका जवाब, JSON ऑब्जेक्ट के तौर पर सही तरीके से स्ट्रक्चर किया गया हो. |
PROTOCOL_ERROR |
अनुरोध को प्रोसेस नहीं किया जा सका.
अपने स्मार्ट होम सेवा लॉग की जांच करने के लिए, 'Google क्लाउड लॉगिंग' में requestId का
इस्तेमाल करें.
|
RESPONSE_TIMEOUT |
अनुरोध के जवाब का इंतज़ार करते हुए समय खत्म हो गया है.
अनुरोध भेजे जाने के 9 सेकंड बाद जवाब भेजने की समयावधि खत्म हो जाती है. इस समयसीमा के अंदर जवाब ज़रूर दें. |
RESPONSE_UNAVAILABLE |
कोई जवाब नहीं मिला या जवाब में स्टेटस नहीं बताया गया है.
इंटेंट फ़ुलफ़िलमेंट के अनुरोधों के जवाबों को स्मार्ट होम दस्तावेज़ के हिसाब से बनाया जाना चाहिए. साथ ही, उन्हें स्टेटस के बारे में बताया जाना चाहिए. |
TRANSIENT_ERROR |
अस्थायी गड़बड़ी एक ऐसी गड़बड़ी है जो अपने-आप ठीक हो जाएगी.
आम तौर पर, ये गड़बड़ियां किसी डिवाइस या सेवा के कनेक्शन के तौर पर दिखती हैं. साथ ही, अगर किसी सर्वर से नए कनेक्शन को खोला नहीं जा सकता. |
खोज लॉग
जब आप मेट्रिक का इस्तेमाल करके अपने इंटिग्रेशन को मॉनिटर करना शुरू कर दें, तो अगला कदम Cloud Logging का इस्तेमाल करके खास गड़बड़ियां हल करना है. गड़बड़ी लॉग, JSON जैसी एंट्री होती है. इसमें समय, गड़बड़ी का कोड, और ओरिजनल स्मार्ट होम इंटेंट से जुड़ी जानकारी जैसी काम की जानकारी वाले फ़ील्ड होते हैं.
Google Cloud में ऐसे कई सिस्टम हैं जो हमेशा आपके प्रोजेक्ट को लॉग भेजते हैं. आपको अपने लॉग फ़िल्टर करने के लिए क्वेरी लिखने और अपनी ज़रूरत के मुताबिक लॉग ढूंढने की ज़रूरत है. क्वेरी, समयसीमा, संसाधन, लॉग गंभीरता या कस्टम एंट्री के हिसाब से हो सकती है.

कस्टम फ़िल्टर बनाने के लिए, क्वेरी बटन का इस्तेमाल किया जा सकता है.

समयसीमा बताने के लिए, समयसीमा चुनने वाले बटन
पर क्लिक करें और दिए गए विकल्पों में से कोई एक विकल्प चुनें. इससे, लॉग फ़िल्टर हो जाएंगे और चुनी गई समयसीमा में शुरू हुए लॉग दिखेंगे.संसाधन चुनने के लिए, संसाधन ड्रॉपडाउन पर क्लिक करें. इसके बाद, Google Assistant का ऐक्शन प्रोजेक्ट चुनें. इससे आपकी क्वेरी में एक फ़िल्टर जुड़ जाता है, जिससे आपके प्रोजेक्ट से शुरू होने वाले लॉग दिखते हैं.
आपातकालीन, जानकारी, डीबग, और दूसरे गंभीरता लॉग लेवल के हिसाब से फ़िल्टर करने के लिए, गंभीरता बटन का इस्तेमाल करें.
कस्टम एंट्री डालने के लिए, Logs Explorer में क्वेरी फ़ील्ड का इस्तेमाल भी किया जा सकता है. इस फ़ील्ड में इस्तेमाल किया जाने वाला क्वेरी इंजन, स्ट्रिंग मैचिंग जैसी बुनियादी क्वेरी और ज़्यादा बेहतर क्वेरी टाइप के साथ काम करता है. इनमें तुलना करने वाले (<, >=, !=
) और बूलियन ऑपरेटर (AND, OR, NOT
) भी शामिल हैं.
उदाहरण के लिए, नीचे दी गई कस्टम एंट्री से ऐसी गड़बड़ियां दिखेंगी जो
LIGHT
डिवाइस टाइप से आती हैं:
resource.type = "assistant_action_project" AND severity = ERROR AND jsonPayload.executionLog.executionResults.actionResults.device.deviceType = "LIGHT"
लॉग को असरदार तरीके से क्वेरी करने के और उदाहरण देखने के लिए, क्वेरी लाइब्रेरी पर जाएं.
परीक्षण सुधार
गड़बड़ियों की पहचान करने और उन्हें ठीक करने के लिए अपडेट लागू करने के बाद, हमारा सुझाव है कि Google Home Test Suite की मदद से, किए गए सुधारों को अच्छी तरह से जांच लें. हम Test Suite का इस्तेमाल करने के तरीके के बारे में उपयोगकर्ता गाइड देते हैं. इसमें, बदलावों की जांच करने के बारे में आपको सही तरीके से बताया गया है.
सीखने के लिए संसाधन
इस दस्तावेज़ में आपके स्मार्ट होम ऐक्शन में गड़बड़ियां ठीक करने का तरीका बताया गया है. डीबग करने के बारे में ज़्यादा जानने के लिए, हमारे कोडलैब भी देखे जा सकते हैं:
- स्मार्ट होम कोडलैब को डीबग करना: स्मार्ट होम क्लाउड इंटिग्रेशन को डीबग करने के लिए क्विक स्टार्ट गाइड.
- लोकल होम कोडलैब को डीबग करना: स्मार्ट होम लोकल इंटिग्रेशन को डीबग करने के लिए क्विक स्टार्ट गाइड.