refresh_date: 2023-01-06
Google Cloud توفّر لك الأدوات اللازمة لمراقبة موثوقية مشاريعك باستخدام Google Cloud Monitoring وتحديد المشاكل وحلّها باستخدام Google Cloud Logging سجلّات الأخطاء. عند حدوث تعذّر في تنفيذ طلبات المستخدِمين، تُسجِّل مسار الإحالة الناجحة في "إحصاءات Google Home" هذا التعذّر في المقاييس، وتُنشِر log خطأ في سجلّات مشروعك.
هناك خطوتان لتحديد المشاكل وحلّها:
- مراقبة حالة مشاريعك باستخدام مقاييس المنزل الذكي
- يمكنك التحقيق في المشاكل من خلال الاطّلاع على أوصاف الأخطاء التفصيلية في سجلّات الأخطاء.
أخطاء المراقبة
يمكنك استخدام Google Cloud Monitoring dashboard للوصول إلى مقاييس مشروعك. هناك بعض الرسوم البيانية الرئيسية التي تُعدّ مفيدة بشكلٍ خاص لمراقبة الجودة وتصحيح الأخطاء:
- الرسم البياني نسبة النجاح هو الرسم البياني الأول الذي يجب البدء به عند مراقبة موثوقية مشاريعك. يمكن أن تشير الانخفاضات في هذا الرسم البياني إلى انقطاع الخدمة جزئيًا أو كليًا لقاعدة المستخدمين. ننصحك بمراقبة هذا الرسم البياني عن كثب بحثًا عن أيّ مخالفات بعد كل تغيير أو تعديل على مشروعك.
- تكون الرسوم البيانية تقسيم الأخطاء مفيدة جدًا عند تحديد مشاكل عمليات الدمج وحلّها. لكل خطأ مميّز في الرسم البياني لنسبة النجاح، يتم عرض رمز خطأ في تفاصيل الأخطاء. اطّلِع على الأخطاء التي تم الإبلاغ عنها من خلال Google Home platform وكيفية تحديد المشاكل وحلّها في الجدول أدناه.
رموز الخطأ في النظام الأساسي
في ما يلي بعض رموز الخطأ الشائعة التي قد تظهر في سجلّات مشروعك لتحديد المشاكل التي تم رصدها من خلال Google Home platform. يُرجى الرجوع إلى الجدول التالي للحصول على معلومات عن تحديد المشاكل وحلّها.
رمز الخطأ | الوصف |
---|---|
BACKEND_FAILURE_URL_ERROR |
تلقّت Google رمز خطأ HTTP 4xx غير 401 من
خدمتك.
استخدِم requestId في "تسجيلات Google Cloud Platform" للاطّلاع على سجلّات خدمة
المنزل الذكي.
|
BACKEND_FAILURE_URL_TIMEOUT |
انتهت مهلة طلب Google عند محاولة الوصول إلى خدمتك.
تأكَّد من أنّ خدمتك متاحة على الإنترنت وأنّها تقبل عمليات الربط وأنّها لا تتجاوز طاقتها الاستيعابية. بالإضافة إلى ذلك، تأكَّد من أنّ الجهاز المستهدف مشغّل ومتّصل بالإنترنت ومتزامن. |
BACKEND_FAILURE_URL_UNREACHABLE |
تلقّت Google رمز خطأ HTTP 5xx من خدمتك.
استخدِم requestId في "تسجيلات Google Cloud Platform" للاطّلاع على سجلّات خدمة
المنزل الذكي.
|
DEVICE_NOT_FOUND |
الجهاز غير متوفّر على جانب خدمة الشريك.
يشير ذلك عادةً إلى حدوث عطل في مزامنة البيانات أو حالة سباق. |
GAL_BAD_3P_RESPONSE |
لا يمكن لخدمة Google تحليل الاستجابة الواردة من خدمة ربط الحساب
بسبب تنسيق أو قيم غير صالحة في الحمولة.
استخدِم requestId في "تسجيلات Google Cloud Platform" للاطّلاع على سجلّات الأخطاء
في خدمة ربط الحسابات.
|
GAL_INTERNAL |
حدث خطأ داخلي في Google عندما حاول محرّك بحث Google استرداد
رمز دخول.
إذا لاحظت زيادة في معدّل ظهور هذا الخطأ في "تسجيلات Google Cloud Platform"، يُرجى التواصل معنا للحصول على مزيد من المعلومات. |
GAL_INVALID_ARGUMENT |
حدث خطأ داخلي في Google عندما حاولت Google استرداد رمز مفتاح علامات التبويب
للوصول.
إذا لاحظت زيادة في معدّل ظهور هذا الخطأ في "تسجيلات Google Cloud Platform"، يُرجى التواصل معنا للحصول على مزيد من المعلومات. |
GAL_NOT_FOUND |
يتم إيقاف رموز الدخول ورموز إعادة التحميل الخاصة بالمستخدم والمخزَّنة على Google
غير صالحة ولا يمكن إعادة تحميلها بعد ذلك. على المستخدم
إعادة ربط حسابه لمواصلة استخدام خدمتك.
إذا لاحظت زيادة في معدّل ظهور هذا الخطأ في "تسجيلات Google Cloud Platform"، يُرجى التواصل معنا للحصول على مزيد من المعلومات. |
GAL_PERMISSION_DENIED |
حدث خطأ داخلي في Google عندما لم تتم الموافقة على مشاركة الرمز المميّز.
إذا لاحظت زيادة في معدّل ظهور هذا الخطأ في "تسجيلات Google Cloud Platform"، يُرجى التواصل معنا للحصول على مزيد من المعلومات. |
GAL_REFRESH_IN_PROGRESS |
انتهت صلاحية رمز مفتاح الوصول الخاص بالمستخدم، وهناك محاولة أخرى جارية في الوقت نفسه لمحاولة
إعادة تحميله.
هذه ليست مشكلة ولا يلزم اتّخاذ أي إجراء. |
INVALID_AUTH_TOKEN |
تلقّت Google رمز الخطأ HTTP 401 من خدمتك.
لم تنته صلاحية رمز الوصول ولكن خدمتك أبطلته. استخدِم requestId في "تسجيلات Google Cloud Platform" للاطّلاع على سجلّات خدمة
المنزل الذكي.
|
INVALID_JSON |
لا يمكن تحليل استجابة JSON أو فهمها.
تحقّق من بنية استجابة JSON بحثًا عن بنية غير صالحة، مثل الأقواس غير المطابقة أو الفواصل غير المتوفّرة أو الأحرف غير الصالحة. |
OPEN_AUTH_FAILURE |
انتهت صلاحية رمز دخول المستخدم ولا يمكن لخدمة Google إعادة تحميله،
أو تلقّت Google رمز الخطأ HTTP 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.
تحقّق من جميع الحقول في ردّ الطلب بحثًا عن أحرف غير مقصودة أو brackets (قوسَين) غير متطابقَين أو أخطاء في التنسيق. قد تكون بعض أحرف يونيكود غير متوافقة. تأكَّد أيضًا من أنّ الاستجابة منسَّقة بشكلٍ صحيح على هيئة عنصر JSON. |
PROTOCOL_ERROR |
تعذّرت معالجة الطلب.
استخدِم requestId في "تسجيلات Google Cloud" للاطّلاع على
سجلات خدمة المنزل الذكي.
|
RESPONSE_TIMEOUT |
انتهت مهلة الطلب أثناء انتظار الرد.
تبلغ مدة المهلة لإرسال الرد 9 ثوانٍ من وقت إرسال الطلب. يُرجى الردّ في غضون هذه المدة الزمنية. |
RESPONSE_UNAVAILABLE |
لم يتم تلقّي أيّ استجابة، أو لا يشير الردّ إلى الحالة.
يجب تنظيم الردود على طلبات التنفيذ المتعلقة بالغرض وفقًا لمستندات الأجهزة المنزلية الذكية مع توضيح الحالة. |
TRANSIENT_ERROR |
الخطأ العابر هو خطأ يتم حلّه تلقائيًا.
في أغلب الأحيان، تظهر هذه الأخطاء على شكل انقطاع الاتصال بجهاز أو خدمة. أيضًا إذا تعذّر فتح اتصالات جديدة بالخادم |
سجلات البحث
بعد أن تصبح مُلمًّا بمراقبة عمليات الدمج باستخدام المقاييس، تبدأ الخطوة التالية في تحديد الأخطاء المحدّدة وحلّها باستخدام Cloud Logging. سجلّ الأخطاء هو إدخال يشبه ملف JSON يحتوي على حقول تحتوي على معلومات مفيدة، مثل الوقت ورمز الخطأ والتفاصيل المتعلّقة بنية المنزل الذكي الأصلية.
هناك أنظمة متعددة داخل Google Cloud ترسل السجلات إلى مشروعك في جميع الأوقات. عليك كتابة طلبات بحث لفلترة السجلّات والعثور على الطلبات التي تحتاج إليها. يمكن أن تستند طلبات البحث إلى نطاق زمني أو مورد أو شدة السجلّ أو الإدخالات المخصّصة.
يمكنك استخدام أزرار طلبات البحث لمساعدتك في إنشاء فلاترك المخصّصة.
لتحديد النطاق الزمني، انقر على زر اختيار النطاق الزمني
وحدِّد أحد الخيارات المتوفرة. سيؤدي هذا إلى فلترة السجلات وعرض السجلات التي نشأت في النطاق الزمني المحدّد.لتحديد مرجع، انقر على القائمة المنسدلة مرجع، ثم اختَر مشروع إجراءات "مساعد Google". يؤدي ذلك إلى إضافة عامل تصفية في استعلامك لعرض السجلات التي تنشأ من مشروعك.
استخدِم زر درجة الخطورة للفلترة حسب الطوارئ والمعلومات وتصحيح الأخطاء وغيرها من مستويات سجلّ الخطورة.
يمكنك أيضًا استخدام حقل "طلب البحث" في 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"، والذي يرشدك خلال اختبار التغييرات بفعالية.
موارد التعلُّم
يقدّم هذا المستند خطوات تحديد وحلّ المشاكل المتعلّقة بالأخطاء في تطبيق "العمل" في "المنزل الذكي". يمكنك أيضًا الاطّلاع على ورشات عمل الترميز لمعرفة المزيد من المعلومات عن تصحيح الأخطاء:
- تصحيح أخطاء درس تطبيقي حول الترميز في المنزل المزوّد بأجهزة ذكية: دليل البدء السريع لتصحيح أخطاء دمج السحابة الإلكترونية للمنزل المزوّد بأجهزة ذكية
- تصحيح أخطاء Local Home Codelab: دليل البدء السريع لتصحيح أخطاء الدمج المحلي للأجهزة المنزلية الذكية