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

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

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

dd44868a4ff2df6e.png

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

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

מה תלמדו

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

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

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

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

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

317697e52ced2437.png

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

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

f8bfd69286c569a4.png

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

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

f511fafd3aaaa1eb.png

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

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

Metrics Explorer

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

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

538d851edfd34764.png

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

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

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

b1c18141d15a0e09.png

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

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

3. מדדי הצלחה

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

שיעור ההצלחה

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

55ea8930fbf48d9e.png

התרשים 'שיעור הצלחה של מילוי הזמנות' שימושי מאוד למעקב אחר ביצועי הפרויקט, אבל לא הרבה יותר במהלך בניית מרכזי בקרה מותאמים אישית או הגדרת התראות. שיעור ההצלחה נגזר מהמדד 'ספירת בקשות', ולא מהמדד לבדו, ולכן תצטרכו ליצור אותו מחדש באמצעות MQL (Monitoring Query Language) ב-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

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

df1ccf7da741e1c7.png

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

4192e0f4ea00dd28.png

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

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

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

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

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

3cc10629830e7f13.png

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

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

686fb1c537fee10.png

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

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

c71a001e4df035ee.png

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

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

קבלת התראות

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

43217b0a145c2cd.png

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

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

במקרים של אירועים, הם ייספרו גם בקטע האירועים בדף Alerting.

fdd883a9604ed981.png

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

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

6. מזל טוב

17d485868a6771bc.png

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

השלבים הבאים

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

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