מעקב אחרי הפסקות זמניות בשירות בבית החכם

1. לפני שמתחילים

כפי שציינו בקודלאב ניפוי באגים בבית חכם, אנחנו מפרסמים מדדים ורשומות בפרויקטים שלכם לבית חכם. המדדים עוזרים לכם לקבוע איפה יש בעיה בפעולה של הבית החכם, והיומנים מועילים כשבודקים לעומק כדי לפתור את הבעיות האלה.

dd44868a4ff2df6e.png

אתם יכולים להגדיר התראות באמצעות המדדים שסופקו לפרויקט שלכם כדי לעקוב אחרי הפסקות זמניות בשירות באופן אוטומטי ולקבל התראות במהלך שיבושים בשירות. אנחנו מפרסמים מדד ביטחון כדי להדגיש את השיבושים בפרויקט שלכם. נרחיב עליו ב-codelab הזה, לצד כל שאר הכלים למתן התראות שזמינים לכם ב-Google Cloud.

דרישות מוקדמות

מה תלמדו

  • איך לעקוב אחרי בעיות בביצועים והפרעות בשירות בפרויקט.
  • איך יוצרים התראה מבוססת-סף ומקבלים התראות במהלך שיבושים.
  • איך משתמשים במדד האמון שסופק לפרויקט כדי לזהות הפסקות זמניות בשירות.

2. מעקב אחר הביצועים

מעקב אחר הביצועים הוא חיוני לשילוב מוצלח עם הסביבה העסקית של Google Home. אנחנו מספקים למפתחים של בית חכם ערכת כלים למעקב ב-Google Cloud. אתם יכולים להשתמש בכלים האלה כדי לקבל מושג לגבי ביצועי הפרויקט.

גישה למרכזי בקרה

השלב הראשון לגישה לנתונים הוא לבדוק את לוחות הבקרה של Google Home. כדי לעשות זאת, נכנסים למסוף Google Cloud ועוברים אל Operations (פעולות) > Monitoring (מעקב) > Dashboards (לוחות בקרה). תוכלו לראות שיש כמה לוחות בקרה זמינים, ולוחות הבקרה של הבית החכם מתחילים ב-Google Home Analytics.

317697e52ced2437.png

יצרנו מרכזי בקרה נפרדים לכל סוג שילוב. לשילובים בענן, בשרת המקומי וב-Matter יש לוח בקרה משלהם, והנתונים של פרוטוקולי הסטרימינג של המצלמה מוצגים בלוח הבקרה של איכות המצלמה. לוחות הבקרה האלה יכילו נתונים רק אם יש לכם שילוב מהסוג המתאים, וגם פרויקט פעיל שמטפל בבקשות.

כשפותחים אחד מהלוחות הבאים, התצוגה נראית כך:

f8bfd69286c569a4.png

מרכזי הבקרה מכילים תרשימים שונים שמציגים את פרטי הבקשות שמטופלות בפרויקט. בכל מרכז בקרה של שילוב מוצג תרשים שבו מוצג המספר הכולל של הבקשות שבוצעו על ידי הפרויקט, תרשים שבו מוצג שיעור ההצלחה של סוג השילוב הזה וכמה תרשימים שבהם מוצגים סוגי המכשירים והמאפיינים שלהם.

יש שלושה תרשימים שחשובים להערכת הביצועים של הפעולות בבית החכם:

f511fafd3aaaa1eb.png

במהלך הפסקות זמניות בשירות, בדרך כלל תראו מגמות ירידה באחוז ההצלחה ומגמות עלייה בתרשים הפירוט של השגיאות. מעקב אחרי אחוז ההצלחה של הביצועים עוזר לזהות את ההפסקה הזמנית בשירות, וגישה לרשימה של השגיאות הנפוצות ביותר בחלוקה לפי שגיאות יכולה לעזור בניפוי הבאגים. יכול להיות שתבחינו גם במגמת עלייה בזמן האחזור במהלך הפסקות זמניות בשירות, כפי שמוצג בתרשימים של זמן האחזור לבקשות.

חשוב לזכור שהתצוגה שמוגדרת כברירת מחדל עם התרשימים שמוצגים במרכזי הבקרה של Analytics ב-Google Home היא רק תצוגה שיצרנו לפרויקט שלכם באמצעות נתוני מדדים של בית חכם. אפשר גם להשתמש ב-Metrics Explorer כדי ליצור תרשימים משלכם מאותו בסיס של מדדים ולשמור אותם במרכזי הבקרה המותאמים אישית.

Metrics Explorer

Metrics Explorer הוא כלי להצגה חזותית של חתכים של מערך הנתונים של הפרויקט. אפשר לגשת לכלי במסוף Google Cloud. עוברים אל Operations‏ > Monitoring‏ > Metrics Explorer.

ב-Google Cloud יש הרבה מדדים שונים מוכנים לשימוש, כולל מדדים שלא קשורים לבית חכם. המדדים שאנחנו מספקים לבית חכם מפורטים במשאב 'actions.googleapis.com/smarthome_action/‎…', וניתן לחפש אותם בקלות על ידי הקלדה של 'smarthome' בתיבה לבחירת מדדים.

538d851edfd34764.png

חיפוש של 'בית חכם' יוביל לכל המדדים של הבית החכם שאנחנו מספקים לפרויקט. מידע מפורט על כל אחד מהמדדים זמין בדפים Monitoring ו-Logging במסמכי העזרה שלנו.

כשמדובר במעקב אחרי הפרויקט, המדד הפשוט ביותר להתייחס אליו הוא המדד מספר הבקשות (שנחשב למדד דלתא). המדד הזה מתעד רשומה לכל ביצוע של בית חכם שהמשתמשים שלכם יזמו, ומתעדים שדות כמו סוג המכשיר, המאפיין, סוג הביצוע שקשור לביצוע וגם את שדה הסטטוס שמוצג בו התוצאה.

בחירה במדד הזה תציג מסך שבו מוצג כל קטגוריה של נתונים, בדומה למסך הבא:

b1c18141d15a0e09.png

בעיקרון, לכל שילוב של תוויות נתונים שקיימות במדד הזה יש קטגוריה שמתעדת את השינוי (הדלתא) בין מרווחי הזמן הקודמים לבין מרווחי הזמן הנוכחיים. אפשר לקבץ את הקטגוריות האלה או לסנן אותן כדי לקבל את נתוני התצוגה הרצויים. בנוסף, הנתונים מותאמים למרווחי זמן נבחרים באמצעות פונקציית התאמה (DELTA, ‏ MEAN, ‏ MEDIAN, ‏ SUM). בדרך כלל משתמשים בהתאמה של דלתא עם מדד דלתא, אלא אם יש צורך אחר.

אתם יכולים ליצור את רוב התרשימים שזמינים בלוחות הבקרה של Analytics ב-Google Home באמצעות Metrics Explorer, ולשמור את התרשימים בלוח בקרה מותאם אישית כדי לגשת אליהם מאוחר יותר. כדי ליצור תצוגות מורכבות יותר, כמו תרשים יחס, תצטרכו להשתמש ב-MQL – שפת שאילתות מעקב.

3. מדדי הצלחה

כשמדובר במעקב אחר הצלחת השילוב, אפשר להשתמש בשיעור ההצלחה שאנחנו מחשבים מהמדד 'מספר הבקשות' בתור אינדיקטור בסיס, או במדד 'רמת האמון בהצלחה' לגישה ספציפית יותר.

שיעור ההצלחה

כדי לחשב את שיעור ההצלחה של כל השילובים, מחלקים את מספר הבקשות שהושלמו במספר כל הבקשות. אפשר לגשת אליו מהתרשים 'שיעור ההצלחה בהשלמת הזמנות' במרכז הבקרה של Analytics ב-Google Home.

55ea8930fbf48d9e.png

התרשים 'שיעור ההצלחה בהשלמת הזמנות' שימושי מאוד למעקב אחרי הביצועים של הפרויקט, אבל פחות שימושי כשאתם יוצרים מרכזי בקרה מותאמים אישית או מגדירים התראות. מאחר ששיעור ההצלחה נגזר ממדד מספר הבקשות, ולא מדד בפני עצמו, תצטרכו ליצור אותו מחדש באמצעות MQL (שפת שאילתות מעקב) ב'סייר המדדים' כדי להשתמש בו עם כל אחת מהתכונות.

בנוסף, כדי לעקוב אחרי השיבושים בביצועים בפרויקט שלך, אנחנו סבורים שנדרשת גישה הרבה יותר מיוחדת. לכן יצרנו את מדד האמון, שמשתנה בהתאם לסטייה של שיעור ההצלחה הנוכחי של ההזמנות מהנורמות ההיסטוריות.

מדד ביטחון

השיבושים בפרויקטים יכולים להיות בגדלים ובצורות שונים. התקפות כאלה יכולות להימשך כמה שעות או רק כמה דקות, ולכן קשה לזהות אותן. לשם כך, יצרנו מדד ביטחון בפרויקט שלכם, שמספק ערך מנורמלי לחיזוי האמינות על סמך הביצועים הקודמים. כדי לגשת למדד האמון, מחפשים את 'בית חכם' בכלי הניתוחים של המדדים ובוחרים באפשרות הערכת הסבירות להצלחת ביצוע.

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 מתבצעת באמצעות מדיניות התראות. אפשר לגשת למדיניות ההתראות דרך התפריט הצדדי, בכרטיסייה Operations > Monitoring > Alerting. כדי ליצור מדיניות התראות חדשה, בוחרים באפשרות ‎+Create Policy. תועברו למסך יצירת מדיניות ההתראות:

6e417d88c2274b3d.png

יצירת מדיניות התראות מורכבת משלושה חלקים. קודם כול, צריך להוסיף תנאי כדי לקבוע אחרי מה רוצים לעקוב. לחיצה על הלחצן ADD CONDITION (הוספת תנאי) תפתח חלון שדומה ל-Metrics Explorer, עם כמה פקדים נוספים להגדרת התנאי:

df1ccf7da741e1c7.png

ליעד, בוחרים את מדד האמון שתיארנו בקטע הקודם. מוודאים שהיישור מוגדר ל-delta באמצעות המדד הזה (Show Advanced Options (הצגת אפשרויות מתקדמות) > Aligner (יישור)). השלב הבא הוא להגדיר את תנאי ההתרעה ולהשתמש בהגדרות הבאות:

4192e0f4ea00dd28.png

Condition triggers if (התנאי מופעל אם) – זו ההגדרה הראשית לקביעת מתי להפעיל את ההתראות. אם בוחרים באפשרות Any time series violates, המערכת תגדיר סף למדד ותבדוק אם הערך חורג מהסף.

תנאי – אנחנו רוצים שההתראה תיגרם כשהערך יירד מתחת לסף, לכן נגדיר את הערך הזה כ-is below. לפי המדד שלנו, הערך 1.0 מציין שהשילוב פועל בצורה תקינה, והערך 0.0 מציין הפסקה זמנית בשירות.

סף – יצרנו את מדד האמון כדי לספק את התוצאות הטובות ביותר כשהערך הזה מוגדר כ-0.5. אם אתם רוצים לקבל התראות בתדירות גבוהה יותר ולקבל התראות על אירועים פחות חמורים, תוכלו לנסות להגדיל את הערך הזה (עד 1.0). אם ברצונך לקבל פחות התראות, רק לגבי בעיות חמורות יותר, אפשר לנסות להקטין את הערך הזה (מינימום 0.0).

For (משך זמן ההפסקה) – ההגדרה הזו קובעת כמה זמן ההפסקה תימשך לפני שתקבלו התראה. מומלץ להשאיר את ההגדרה הזו בערך האחרון כדי לקבל התראות על כל נקודה שחוצה את הסף. מדד האמון שלנו מתפרסם כל 15 דקות, על סמך שיעור ההצלחה הממוצע בתקופה הזו.

אחרי שמסיימים להוסיף תנאי, השלב הבא הוא בחירת ערוץ ההתראות. השיטה הפשוטה ביותר לקבלת התראות היא התראות באימייל. אפשר לבחור כתובת אימייל שמופיעה בתפריט הנפתח Notification Channels:

3cc10629830e7f13.png

אם תסמנו את האפשרות Notify on incident closure (קבלת התראה על סגירת התקרית), תישלח הודעה נוספת ברגע שהאירוע יסומן כסגור. במקרה כזה, צריך גם לבחור משך זמן סגירה אוטומטית של אירוע, שמוגדר כברירת מחדל כ-7 ימים.

בשלב האחרון, נותנים שם להתראה ומוסיפים את כל המסמכים שרוצים לכלול בהתראות.

686fb1c537fee10.png

מומלץ לספק מסמכים, במיוחד אם אתם לא אלה שיקבלו את ההתראה. הוספת שלבים כמו איפה לבדוק במהלך אירוע ואיך לבצע סינון ראשוני וניפוי באגים יכולה לעזור במהלך הפסקה זמנית בשירות. אפשר לעיין במדריך לפתרון בעיות לפי הצורך.

לאחר השמירה, מדיניות ההתראות תופיע בקטע 'מדיניות' בדף 'התראות'.

c71a001e4df035ee.png

5. צמצום ההפסקות הזמניות בשירות

אחרי שתגדירו התראות, תקבלו התראות במהלך הפסקות זמניות בשירות דרך ערוצי ההתראות שסיפקתם, וכן תיווצר רשומה של אירוע בדף Alerting.

קבלת התראות

ערוץ ההתראות שציינו בקוד ה-Lab הזה היה אימייל. אחרי שתגדירו את ההתראות, אנחנו מקווים שלא תקבלו התראות (לא יהיו הפסקות זמניות בשירות), אבל אם כן, ההתראה תיראה כך:

43217b0a145c2cd.png

שימו לב שההודעה על ההתראה כוללת את הערך שנצפה ועובר את הסף שציינתם, וגם חותמת זמן שמציינת מתי התחילה התקרית.

מעקב אחרי אירועים

כשאירועים מתרחשים, הם נספרים גם בקטע 'אירועים' בדף Alerting.

fdd883a9604ed981.png

אפשר ללחוץ על התקרית הספציפית כדי לראות את הפרטים לגבי ההפסקה זמנית בשירות, כמו משך ההפסקה או מידת החומרה שלה.

חשוב לזכור: כשאתם מקבלים התראות, השלב הראשון הטוב ביותר הוא לבדוק את המדדים שלכם, ואז לחפש ביומני המערכת את השגיאות שגורמות להפסקה זמנית בשירות. אפשר לקבל תזכורת לגבי הדרכים לביצוע הפעולות האלה בקודלאב ניפוי באגים בבית חכם.

6. מזל טוב

17d485868a6771bc.png

מעולה! סיימתם ללמוד איך להגדיר התראות באמצעות המדדים שסופקו לפרויקט שלכם, כדי לעקוב אחרי הפסקות זמניות בשירות באופן אוטומטי ולקבל התראות במהלך שיבושים בשירות.

השלבים הבאים

בהמשך ל-Codelab הזה, כדאי לנסות את התרגילים הבאים ולעיין במשאבים נוספים:

  • אתם יכולים לשלב את מה שלמדתם ב-codelab הזה עם מדדים אחרים שזמינים בפרויקט שלכם. הרשימה המלאה של המדדים הזמינים מופיעה בקטע מדדים נתמכים בדף Monitoring.
  • אפשר למצוא סוגים אחרים של ערוצי התראות בדף Notification Options במסמכי העזרה של Google Cloud.