المقاييس المستنِدة إلى السجلّ للمنزل المزوّد بأجهزة ذكية

‫1. قبل البدء

كما أوضحنا في درس تصحيح أخطاء المنزل الذكي التطبيقي حول الترميز، ننشر المقاييس والسجلات في مشاريع "المنزل الذكي". تساعد المقاييس في تحديد المشاكل التي تواجهها "إجراءات المنزل الذكي"، وتكون السجلات مفيدة عند إجراء نظرة متعمّقة لحلّ هذه المشاكل.

848f483bfcd2997a.png

بالإضافة إلى المقاييس التي نتيحها لمشروعك، يمكنك أيضًا إنشاء مقاييسك الخاصة باستخدام "مقاييس مستندة إلى السجلّ" من Google Cloud. يتيح لك ذلك تتبُّع أنماط معيّنة في سجلّاتك وتحديد المشاكل المتعلّقة بالجودة وحلّها بفعالية.

المتطلبات الأساسية

أهداف الدورة التعليمية

  • كيفية كتابة طلبات بحث فعّالة لتصفية سجلّات أخطاء "المنزل الذكي"
  • كيفية إنشاء مقاييس مستندة إلى السجلّ لإنشاء مقاييس من طلبات البحث
  • كيفية إنشاء رسوم بيانية ولوحات بيانات من المقاييس المستندة إلى السجلّ لأغراض المراقبة

‫2. العمل باستخدام السجلات

كما أشرنا بإيجاز في التصحيح في Smart Home Codelab، فإنّ استخدام السجلات هو مفتاح نجاح مشروعك. تتوفّر أدوات رائعة على Google Cloud لمراقبة سجلّاتك وتحليلها. للوصول إلى جميع السجلات المتاحة لمشروعك، يمكنك استخدام مستكشف السجلات.

الوصول إلى السجلات

أول خطوة للوصول إلى سجلّاتك هي تسجيل الدخول إلى Google Cloud واختيار مشروعك. انتقِل إلى مستكشف السجلّات باستخدام القائمة الجانبية من خلال الانتقال إلى العمليات > تسجيل الدخول > مستكشف السجلّات. بعد فتح الأداة، من المفترض أن تظهر لك طريقة العرض التالية:

78982d8b6d19b827.png

يتألف "مستكشف السجلات" من قسمَين رئيسيَّين: قسم لكتابة طلبات البحث في الأعلى (أداة إنشاء طلبات البحث)، ومساحة لعرض النتائج المطابقة (نتائج طلب البحث).

تكتب العديد من المكوّنات المختلفة في Google السجلات في مشروعك تلقائيًا. للعثور على السجلات الواردة من عملية دمج "المنزل الذكي" والعمل بها، يجب كتابة طلبات بحث مخصّصة.

كتابة طلبات البحث

يتم نشر السجلات في المشاريع ضمن نوع مورد. يمثّل كل نوع من الموارد منصة مختلفة ضمن Google. تتوفّر السجلات الواردة من منصة "المنزل الذكي" لمشروعك ضمن نوع المورد assistant_action_project.

بالإضافة إلى ذلك، يتم تحديد مستوى درجة الأهمية لجميع السجلّات عند إنشائها. في سجلّات "المنزل الذكي"، نستخدم المستوى ERROR للسجلّات التي تمثّل الأخطاء والاستثناءات، والمستوى DEBUG لكل ما عدا ذلك.

في المثال التالي، سنكتب طلب بحث لفلترة السجلات الواردة من منصتنا فقط والتي تمثّل أخطاء، وذلك على النحو التالي:

753bfe72a9f8e959.png

بعد الانتهاء من كتابة طلب البحث، انقر على الزر تنفيذ طلب البحث لبدء طلب البحث. من المفترض أن يؤدي ذلك إلى عرض الأخطاء الناتجة عن عملية دمج Smart Home:

3ef42da5a6c322e1.png

كما ترى، لدينا عدد من الأخطاء التي حدثت في أوقات مختلفة خلال الساعة الماضية. يمثّل كل سطر سجلّ خطأ واحدًا. يمكنك النقر على السجلات الفردية وتوسيع الحقول المتداخلة للاطّلاع على المعلومات الواردة فيها.

استخدام المدرّج التكراري

توفّر "أداة استكشاف السجلّات" ميزة "المدرّج التكراري" المفيدة للاطّلاع على التوزيع الزمني للسجلّات التي تتطابق مع طلب البحث. لتفعيل "المدرّج التكراري"، انقر على تخطيط الصفحة من الأزرار في أعلى يسار الصفحة، وضَع علامة في المربّع بجانب المدرّج التكراري لتفعيل الميزة.

10eaf1d204decf3c.png

بعد التفعيل، سيظهر لك توزيع للسجلات التي تطابق طلب البحث:

dd3410e65a83cf5d.png

كما ترى في الصورة أعلاه، لدينا عدة أخطاء مجمّعة بشكل متفرّق على مدار الساعة الماضية. يبدو أنّها تشكّل ثلاث مجموعات عنقودية حول الساعة 1:45 و2:00 و2:15 مساءً. يمكن أن يساعدك المدرّج التكراري في رصد الأنماط التي يصعب رؤيتها من خلال التحقّق من قيم الطابع الزمني فقط.

في الوقت الحالي، لا يميّز طلب البحث الذي نستخدمه بين السجلات، ويعرض لنا جميع الأخطاء الواردة من ميزة "الدمج مع المنزل الذكي". في كثير من الأحيان، قد تحتاج إلى التمييز بين الأخطاء، مثلاً لتتبُّع أنماط الأخطاء الناتجة عن أنواع أو سمات معيّنة من الأجهزة. للقيام بذلك، سنلقي نظرة على كتابة طلبات بحث متقدمة.

طلبات البحث المتقدّمة

عند فحص سجلّ أحداث "المنزل الذكي"، ستلاحظ وجود حقول مختلفة يمكنك جمع المعلومات منها:

825c57c36800844e.png

action

  • trait: سمة الجهاز المستهدَفة من قِبل المستخدم (على سبيل المثال، OnOff وStartStop وBrightness)
  • actionType: حالة السمة الدقيقة (على سبيل المثال، "مفعَّلة" أو "غير مفعَّلة" أو "إيقاف مؤقّت" أو "إيقاف" أو "استئناف")

device

  • استبدِل deviceType بما يلي: نوع الجهاز المستهدَف من قِبل المستخدم (على سبيل المثال، مصباح أو مفتاح أو غسّالة)

status

  • استبدِل isSuccess بما يلي: ما إذا كانت نتيجة الإجراء ناجحة (صحيح / خطأ)
  • statusType: رمز الحالة لنتيجة الإجراء (يشير إلى رمز خطأ في حال عدم النجاح)
  • externalDebugString: سلسلة تصحيح الأخطاء للإجراء (تصف الخطأ بالتفصيل)

الحقول الأخرى

تتوفّر أيضًا حقول إضافية يمكنك استخلاص المعلومات منها:

  • requestId: معرّف فريد مرتبط بالطلب (تنشئه Google)
  • executionType: المسار المستخدَم في الطلب (يشير إلى ما إذا كان الطلب من السحابة الإلكترونية أو من الجهاز)
  • latencyMsec: وقت الاستجابة المُدرَك للطلب على خوادم Google (بالمللي ثانية)
  • locale: زوج اللغة/المنطقة الذي يتم إرسال الطلب منه (على سبيل المثال، en-US أو fr-FR)

باستخدام حقل السمة من القائمة أعلاه، سنعدّل طلب البحث ليشمل فقط الأخطاء التي تأتي من السمة OnOff على النحو التالي:

resource.type="assistant_action_project" AND severity=ERROR AND
jsonPayload.executionLog.executionResults.actionResults.action.trait="TRAIT_ON_OFF"

بعد تشغيل الاستعلام المعدَّل، يحدّد النظام السجلات ويعرض لنا النتيجة المطابقة:

76176d7a41962341.png

حتى الآن، نفّذنا جميع طلبات البحث يدويًا. هذه طريقة رائعة للتحقّق بسرعة من حالة الأخطاء، ولكنّها ليست مناسبة لمراقبة التغيّرات في أنماط الأخطاء بمرور الوقت. لأتمتة هذا التدفق وتسجيل البيانات من فترات زمنية أطول، سننشئ مقاييس مستندة إلى السجلّ.

3- المقاييس المستندة إلى السجلّات

لاحتساب عدد السجلات التي تتطابق مع طلبات البحث بمرور الوقت، يمكنك استخدام المقاييس المستندة إلى السجلّ. سيسمح لك ذلك بالاطّلاع على الأنماط في سجلّاتك وتقديم إحصاءات جيدة حول المشاكل الأساسية.

إنشاء مقياس مستند إلى السجلّات

لإنشاء مقياس مستند إلى السجلّ، انتقِل إلى العمليات > التسجيل > المقاييس المستندة إلى السجلّ. سيؤدي ذلك إلى عرض قائمة المقاييس المستندة إلى السجلّ المتوفّرة حاليًا في مشروعك. بعد النقر على الزر إنشاء مقياس، ستظهر لك شاشة إنشاء المقياس المستند إلى السجلّ:

296af6e7d8dcf6cf.png

هناك نوعان أساسيان من المقاييس: مقياس العداد الذي يحسب عدد السجلات التي تتطابق مع طلب البحث. يتتبّع مقياس التوزيع التوزيع الأساسي ويسمح بإجراء عمليات إحصائية مثل المتوسط والوسيط والشريحة المئوية الخامسة والتسعين.

عند الانتقال للأسفل، سيظهر قسم الفلترة حيث يمكنك كتابة طلب البحث.

f7f2093fa1bce2ac.png

سنلصق طلب البحث من القسم السابق في مساحة النص إنشاء فلتر.

​​resource.type="assistant_action_project" AND severity=ERROR AND
jsonPayload.executionLog.executionResults.actionResults.action.trait="TRAIT_ON_OFF"

يمكنك أيضًا النقر على الزر معاينة السجلات للاطّلاع على عرض سريع للسجلات السابقة التي تتطابق مع الفلتر. بعد الانتهاء، يمكنك النقر على الزر إنشاء مقياس والانتقال إلى القسم التالي.

عرض بيانات المقاييس المستندة إلى السجلّات

بعد إنشاء المقياس المستند إلى السجلّ، سيكون متاحًا في قسم المقاييس من تحديد المستخدم في صفحة "المقاييس المستندة إلى السجلّ".

1b2c88c18533fbcd.png

من القائمة المقابلة للمقياس المستند إلى السجلّ (3 نقاط)، اختَر عرض في "مستكشِف المقاييس" للاطّلاع على البيانات التي تم جمعها في المقياس المستند إلى السجلّ:

54a836fdc3a666a3.png

عندما نرصد خطأً جديدًا، سيسجّله المقياس المستند إلى السجلّ ويتم عرضه في نافذة الرسم البياني في مستكشف المقاييس.

المراقبة من خلال لوحات البيانات المخصّصة

بعد التأكّد من أنّ المقياس الجديد المستند إلى السجلّ يعمل على النحو المطلوب، يحين وقت حفظ طريقة عرض الرسم البياني هذه في لوحة بيانات مخصّصة. لإجراء ذلك، انقر على الزر حفظ الرسم البياني في أعلى يسار مستكشف المقاييس. سيؤدي ذلك إلى ظهور طلب تسمية الرسم البياني واختيار لوحة البيانات التي تريد الحفظ فيها:

52329085f841782e.png

بعد حفظ الرسم البياني في لوحة بيانات، يمكننا الوصول إليه بسهولة من هناك. للوصول إلى قائمة لوحات البيانات المتاحة في مشروعك، انتقِل إلى العمليات > الرصد > لوحات البيانات.

44961e7cb3663341.png

لقد حفظنا الرسم البياني في لوحة بيانات باسم "لوحة بيانات Codelab". سيؤدي فتحها إلى عرض ما يلي:

f7e025c27f30f996.png

كما ترى، يتم عرض الرسم البياني الذي يمثّل المقياس المستند إلى السجلّ هنا، بالإضافة إلى البيانات التي تم جمعها حديثًا. يتم نشر سجلّات المنزل المزوّد بأجهزة ذكية في مشروعك في الوقت الفعلي. عندما يتوفّر سجلّ جديد، سيتم احتسابه من خلال المقياس المستند إلى السجلّ على الفور.

4. تهانينا

674c4f4392e98c1.png

تهانينا! لقد تعلّمت بنجاح كيفية تحويل طلبات البحث إلى مقاييس مستندة إلى السجلّ وحفظها في لوحات بيانات مخصّصة لأغراض المراقبة.

الخطوات التالية

استنادًا إلى هذا الدرس التطبيقي حول الترميز، جرِّب التمارين التالية واستكشِف المراجع الإضافية: