نظارت بر قطعی برای خانه هوشمند

1. قبل از شروع

همانطور که در اشکال‌زدایی کدهای خانه هوشمند پوشش داده‌ایم، معیارها و گزارش‌ها را برای پروژه‌های خانه هوشمند شما منتشر می‌کنیم. معیارها به شما کمک می‌کنند تا مشخص کنید «اقدام خانه هوشمند» در کجا مشکل دارد، و گزارش‌ها هنگام شیرجه عمیق برای حل این مشکلات مفید هستند.

dd44868a4ff2df6e.png

می‌توانید هشدارها را با استفاده از معیارهای ارائه‌شده به پروژه خود تنظیم کنید تا خاموشی‌ها را به صورت خودکار نظارت کنید و در هنگام اختلالات سرویس اعلان دریافت کنید. ما در حال انتشار یک معیار اطمینان برای برجسته کردن اختلالات پروژه شما هستیم، که در این کدنویسی به همراه سایر ابزارهای هشدار در دسترس شما در Google Cloud Platform پوشش خواهیم داد.

پیش نیازها

چیزی که یاد خواهید گرفت

  • نحوه نظارت بر مشکلات عملکرد و اختلالات سرویس در پروژه خود.
  • نحوه ایجاد یک هشدار مبتنی بر آستانه و دریافت اعلان ها در هنگام اختلالات.
  • چگونه از معیار اطمینان ارائه شده به پروژه خود برای تشخیص قطعی استفاده کنید.

2. نظارت بر عملکرد

نظارت بر عملکرد برای ادغام موفقیت آمیز با اکوسیستم خانه هوشمند Google بسیار مهم است. ما مجموعه ای از ابزارهای نظارتی را برای توسعه دهندگان خانه های هوشمند در Google Cloud Platform ارائه می کنیم. شما می توانید از این ابزارها برای درک عملکرد پروژه خود استفاده کنید.

دسترسی به داشبوردها

اولین قدم برای دسترسی به داده‌های خود، بررسی داشبوردهای Google Home، با ورود به Google Cloud Console و پیمایش به Operations > Monitoring > Dashboards است. خواهید دید که تعدادی داشبورد در دسترس است و داشبوردهای خانه هوشمند با پیشوند Google Home Analytics عرضه می شوند.

317697e52ced2437.png

ما داشبوردهای جداگانه ایجاد کردیم تا هر نوع ادغام را نشان دهد. ادغام‌های Cloud، Local و Matter داشبورد خاص خود را دارند و داده‌های پروتکل‌های پخش جریانی دوربین در داشبورد کیفیت دوربین ارائه می‌شوند. این داشبوردها تنها در صورتی حاوی داده‌هایی خواهند بود که یکپارچه‌سازی از نوع متناظر، همراه با پروژه‌ای که درخواست‌ها را برآورده می‌کند، داشته باشید.

وقتی یکی از این داشبوردها را باز می‌کنید، نمایی که دریافت می‌کنید به شکل زیر خواهد بود:

f8bfd69286c569a4.png

داشبوردها شامل نمودارهای مختلفی هستند که جزئیات درخواست های انجام شده توسط پروژه شما را نشان می دهد. با هر داشبورد یکپارچه سازی، نموداری خواهید دید که تعداد کل درخواست های انجام شده توسط پروژه شما را نشان می دهد، نموداری که میزان موفقیت آن نوع ادغام را نشان می دهد و نمودارهای مختلفی را نشان می دهد که انواع دستگاه و ویژگی های مربوطه را نشان می دهد.

سه نمودار وجود دارد که برای ارزیابی عملکرد اقدامات خانه هوشمند شما حیاتی است:

f511fafd3aaaa1eb.png

در طول خاموشی، معمولاً روند نزولی در درصد موفقیت و یک روند صعودی در نمودار شکست خطا مشاهده خواهید کرد. نظارت بر درصد موفقیت اجرا به تشخیص قطعی کمک می کند، در حالی که نگاهی به خطاهای اصلی در تجزیه خطا می تواند به رفع اشکال کمک کند. همچنین ممکن است یک روند صعودی در تأخیر در زمان قطعی مشاهده کنید، که می توانید آن را در نمودارهای تأخیر درخواست مشاهده کنید.

توجه داشته باشید که نمای پیش‌فرض با نمودارهایی که در داشبوردهای Google Home Analytics می‌بینید، فقط نمایی است که ما برای پروژه شما با استفاده از داده‌های معیارهای خانه هوشمند ایجاد کرده‌ایم. همچنین می توانید از Metrics Explorer برای ایجاد نمودارهای خود از همان معیارهای اساسی و ذخیره آنها در داشبوردهای سفارشی خود استفاده کنید.

متریک اکسپلورر

Metrics Explorer ابزاری برای تجسم بخش های مقطعی از مجموعه داده پروژه شما است. این ابزار در Google Cloud Console با پیمایش به Operations > Monitoring > Metrics Explorer قابل دسترسی است.

Google Cloud معیارهای مختلفی را در خارج از جعبه ارائه می دهد، از جمله برخی از آنها که مربوط به خانه هوشمند نیستند. معیارهایی که ما برای خانه هوشمند ارائه می کنیم در منبع "actions.googleapis.com/smarthome_action/..." فهرست شده اند و می توان به راحتی با تایپ کردن "smarthome" در کادر انتخاب متریک جستجو کرد.

538d851edfd34764.png

جستجوی "smarthome" تمام معیارهای خانه هوشمندی را که ما برای پروژه شما ارائه می دهیم، نشان می دهد. شما می توانید اطلاعات دقیق در مورد هر یک از معیارهای ما را در صفحات نظارت و ثبت اسناد ما دریافت کنید.

وقتی صحبت از نظارت بر پروژه شما می شود، ساده ترین معیاری که می توان به آن اشاره کرد، متریک تعداد درخواست (که یک متریک دلتا است) است. این معیار یک ورودی برای هر اجرای خانه هوشمند که توسط کاربران شما آغاز شده است را ثبت می کند و فیلدهایی مانند نوع دستگاه، ویژگی، نوع اجرای مرتبط با اجرا و فیلد وضعیتی که نتیجه را نشان می دهد را ثبت می کند.

با انتخاب این معیار، صفحه‌ای ایجاد می‌شود که هر سطل داده را شبیه به موارد زیر نشان می‌دهد:

b1c18141d15a0e09.png

اساساً، برای هر ترکیبی از برچسب‌های داده موجود در این متریک، یک سطل وجود دارد که تغییر (مثلث) بین بازه‌های زمانی قبلی و فعلی را ثبت می‌کند. این امکان وجود دارد که این سطل ها را گروه بندی یا فیلتر کنید تا برش داده های نمایش دلخواه مورد نظر خود را بدست آورید. علاوه بر این، داده ها در بازه های زمانی انتخاب شده با یک تابع تراز (DELTA، MEAN، MEDIAN، SUM) تراز می شوند. مگر اینکه نیاز دیگری باشد، معمولاً از تراز دلتا با متریک دلتا استفاده می کنید.

می‌توانید بیشتر نمودارهای موجود در داشبورد Google Home Analytics را با استفاده از Metrics Explorer ایجاد کنید و نمودارهای خود را برای دسترسی بعدی در یک داشبورد سفارشی ذخیره کنید. برای دستیابی به نماهای پیچیده تر، مانند نمودار نسبت، باید از MQL - Monitoring Query Language استفاده کنید.

3. معیارهای موفقیت

وقتی نوبت به ردیابی موفقیت یکپارچه‌سازی شما می‌رسد، می‌توانید از میزان موفقیتی که از متریک تعداد درخواست شما محاسبه می‌کنیم به‌عنوان شاخص پایه استفاده کنید، یا از اطمینان موفقیت برای یک رویکرد تخصصی‌تر استفاده کنید.

میزان موفقیت

نرخ موفقیت برای همه ادغام های شما با تقسیم تعداد درخواست های موفق به همه درخواست ها محاسبه می شود. می‌توانید از نمودار نرخ موفقیت در داشبورد Google Home Analytics خود به آن دسترسی داشته باشید.

55ea8930fbf48d9e.png

نمودار نرخ موفقیت برای نظارت بر عملکرد پروژه شما بسیار مفید است، اما در هنگام ساخت داشبوردهای سفارشی یا تنظیم هشدارها، چندان مفید نیست. از آنجایی که میزان موفقیت از متریک تعداد درخواست شما مشتق شده است، و به خودی خود یک معیار نیست، باید آن را با استفاده از MQL (زبان مانیتورینگ پرس و جو) در Metrics Explorer دوباره ایجاد کنید تا از آن با هر یک از ویژگی ها استفاده کنید.

همچنین برای ردیابی اختلالات عملکرد در پروژه شما، فکر می کنیم رویکرد بسیار تخصصی تری لازم است. به همین دلیل است که ما معیار اطمینان را ایجاد کرده‌ایم که بر اساس میزان انحراف میزان موفقیت فعلی شما از هنجارهای تاریخی تغییر می‌کند.

متریک اعتماد

قطعی ها می توانند در اشکال و اندازه های مختلف برای پروژه ها وجود داشته باشند. آنها می توانند از چند ساعت تا چند دقیقه دوام بیاورند، که می تواند شناسایی آنها را به یک چالش تبدیل کند. برای این منظور ما یک متریک اطمینان در پروژه شما ایجاد کرده‌ایم که یک مقدار نرمال شده برای پیش‌بینی قابلیت اطمینان بر اساس عملکرد گذشته ارائه می‌دهد. با جستجوی خانه هوشمند در کاوشگر متریک و سپس انتخاب اطمینان موفقیت آمیز اجرا ، می‌توانید به معیار اطمینان دسترسی پیدا کنید.

ab467a1777281526.png

وقتی ادغام خانه هوشمند شما با عملکرد تاریخی (میانگین 7 روز) یا بالاتر از آن انجام می شود، این معیار حداکثر مقدار (1.0) را به دست می دهد. هنگامی که درصد موفقیت شما بیش از ضریب 4 انحراف استاندارد (همچنین در 7 روز محاسبه می شود) منحرف می شود، این متریک حداقل مقدار (0.0) را به دست می دهد. برای مواردی که انحرافات استاندارد خیلی کوچک هستند (کمتر از 2.5٪)، این متریک مقدار 0.0 را بر اساس درصد موفقیت 10٪ کاهش می دهد.

برای همه موارد بینابینی، این متریک مقادیری بین 1.0 (کاملاً مطمئن است که قطعی وجود ندارد) و 0.0 (حداکثر اطمینان از وجود قطعی) ارائه می دهد.

بنابراین هنگام تنظیم یک هشدار (که در بخش بعدی ارائه می شود)، توصیه می کنیم مقدار 0.5 را به عنوان آستانه تعیین کنید. این با 2 انحراف استاندارد یا افت 5 درصدی مطابقت دارد، هر کدام که بیشتر باشد.

4. تنظیم هشدارها

مرحله بعدی این است که از همه چیزهایی که در بخش قبل یاد گرفتید برای تنظیم هشدارها در پروژه خود استفاده کنید.

ایجاد یک خط مشی هشدار

هشدار خودکار در Google Cloud Platform از طریق خط‌مشی‌های هشدار تنظیم می‌شود. می‌توانید از طریق منوی کناری، عملیات > نظارت > تب هشدار، به سیاست‌های هشدار دسترسی داشته باشید. می‌توانید با انتخاب گزینه +CREATE POLICY یک خط‌مشی هشدار جدید ایجاد کنید، که شما را به صفحه ایجاد خط‌مشی هشدار می‌رساند:

6e417d88c2274b3d.png

سه بخش برای ایجاد یک خط مشی هشدار وجود دارد. ابتدا باید با افزودن یک شرط مشخص کنید که چه چیزی را می خواهید ردیابی کنید. با فشار دادن دکمه ADD CONDITION ، پنجره ای شبیه به Metrics Explorer با چند کنترل اضافی برای پیکربندی شرایط ظاهر می شود:

df1ccf7da741e1c7.png

برای هدف، معیار اطمینانی را که در بخش قبل توضیح دادیم انتخاب کنید. مطمئن شوید که تراز با استفاده از این معیار روی دلتا تنظیم شده است ( نمایش گزینه‌های پیشرفته > ترازکننده ). مرحله بعدی پیکربندی وضعیت هشدار و استفاده از تنظیمات زیر است:

4192e0f4ea00dd28.png

Condition triggers if - این پیکربندی اصلی برای تعیین زمان راه‌اندازی هشدارها است. انتخاب Any series time violates کار خواهد کرد زیرا در صورت عبور از مقدار، آستانه‌ای را روی متریک خود تعیین می‌کنیم و نظارت می‌کنیم.

شرط - ما می‌خواهیم زمانی که مقدار به زیر آستانه می‌رسد، هشدار فعال شود، بنابراین آن را روی زیر تنظیم می‌کنیم. با متریک ما، 1.0 به این معنی است که ادغام به خوبی کار می کند و 0.0 نشان دهنده قطعی قطعی است.

آستانه - ما معیار اطمینان را برای ارائه بهترین نتایج زمانی که این مقدار روی 0.5 تنظیم شده است ایجاد کرده ایم. اگر می‌خواهید هشدارهای مکرر داشته باشید و برای حوادث کمتر مطلع شوید، می‌توانید این مقدار را افزایش دهید (حداکثر 1.0). پس از آن، اگر می‌خواهید کمتر هشدار دریافت کنید، فقط برای مشکلات شدیدتر، می‌توانید سعی کنید این مقدار را کاهش دهید (حداقل 0.0).

برای - این تنظیمی است که مشخص می‌کند قبل از اینکه به شما هشدار داده شود، قطعی چقدر طول بکشد. توصیه می‌کنیم این تنظیم را در آخرین مقدار نگه دارید تا برای هر نقطه‌ای که از آستانه عبور می‌کند هشدار دریافت کنید. معیار اطمینان ما هر 15 دقیقه منتشر می شود و میانگین موفقیت در آن دوره را بررسی می کند.

هنگامی که اضافه کردن یک شرط را کامل کردید، مرحله بعدی انتخاب کانال اعلان است. ساده ترین روش اطلاع رسانی، هشدارهای ایمیلی است. می‌توانید ایمیلی را انتخاب کنید که در قسمت کشویی کانال‌های اعلان فهرست شده است:

3cc10629830e7f13.png

اگر گزینه Notify on incident closure را علامت بزنید، پس از مشخص شدن بسته شدن حادثه، اعلان دیگری ارسال خواهد شد. در آن صورت، شما همچنین باید مدت زمان بسته شدن خودکار حادثه را انتخاب کنید که به طور پیش فرض 7 روز تعیین شده است.

مرحله آخر این است که به هشدار خود یک نام بدهید و هر سندی را که می خواهید در اعلان ها اضافه کنید.

686fb1c537fee10.png

ارائه اسناد توصیه می شود، به خصوص اگر شما کسی نیستید که هشدار را دریافت می کنید. افزودن مراحلی مانند مکان‌هایی که در طول یک حادثه باید بررسی شود و نحوه تریاژ و اشکال‌زدایی می‌تواند به هنگام قطعی کمک کند. در صورت نیاز می توانید به راهنمای عیب یابی ما مراجعه کنید.

پس از ذخیره، خط‌مشی هشدار شما در بخش خط‌مشی‌ها در صفحه هشدار فهرست می‌شود.

c71a001e4df035ee.png

5. کاهش خاموشی ها

هنگامی که هشدارها را تنظیم کردید، در هنگام قطعی کانال‌های اطلاع رسانی که ارائه کرده‌اید به شما اطلاع داده می‌شود و همچنین یک ورودی حادثه در صفحه هشدار ایجاد می‌شود.

دریافت هشدارها

کانال هشداری که در این لبه کد ارائه کردیم یک ایمیل بود. پس از تنظیم، امیدواریم هیچ هشداری دریافت نکنید (بدون هیچ قطعی)، اما اگر این کار را انجام دهید اعلان به شکل زیر خواهد بود:

43217b0a145c2cd.png

توجه داشته باشید که اعلان هشدار مقدار مشاهده شده را که از آستانه ای که شما مشخص کرده اید عبور می کند و همچنین یک مهر زمانی را ارائه می دهد که نشان می دهد اولین بار چه زمانی حادثه شروع شده است.

نظارت بر حوادث

همانطور که حوادث رخ می دهد، آنها همچنین در بخش حوادث در صفحه هشدار شمارش می شوند.

fdd883a9604ed981.png

می‌توانید روی حادثه خاص کلیک کنید تا جزئیات مربوط به قطع را ببینید، مانند مدت زمان طولانی یا شدت آن.

به یاد داشته باشید، همانطور که هشدارها را دریافت می کنید، بهترین قدم اول این است که به معیارهای خود نگاهی بیندازید، سپس خطاهایی را که در قطعی شما نقش دارند را در گزارش های خود جستجو کنید. شما می‌توانید در مورد نحوه انجام این کارها در Lab Code Debugging the Smart Home اطلاعات تازه‌ای داشته باشید.

6. تبریک می گویم

17d485868a6771bc.png

تبریک می گویم! شما با موفقیت یاد گرفتید که چگونه هشدارها را با استفاده از معیارهای ارائه شده برای پروژه خود برای نظارت بر قطعی به صورت خودکار و دریافت اعلان در هنگام اختلالات سرویس تنظیم کنید.

مراحل بعدی

با ایجاد این Codelab، تمرینات زیر را امتحان کنید و منابع اضافی را کشف کنید:

  • شما می توانید آنچه را که در این کد لبه یاد گرفته اید با سایر معیارهای ارائه شده برای پروژه خود ترکیب کنید. می توانید لیست کامل معیارهای موجود را در بخش معیارهای پشتیبانی شده در صفحه نظارت مشاهده کنید.
  • انواع دیگر کانال‌های اعلان برای هشدارها را که در صفحه گزینه‌های اعلان اسناد Google Cloud Platform توضیح داده شده است، کاوش کنید.