1. לפני שמתחילים
כפי שציינו בניפוי באגים ב-Codelab של בית חכם, אנחנו מפרסמים מדדים ויומנים בפרויקטים שלך לבית חכם. מדדים עוזרים לקבוע איפה נתקלת בבעיות בפעולה של הבית החכם, ובעזרת היומנים אפשר לבצע ניתוח מעמיק של הבעיה כדי לפתור את הבעיות האלה.
נוסף על המדדים שאנחנו מאפשרים להציג בפרויקט שלכם, תוכלו גם ליצור מדדים משלכם באמצעות המדדים מבוססי היומן מ-Google Cloud Platform. כך תוכלו לעקוב אחרי דפוסים מסוימים ביומנים ולנפות ביעילות באגים בבעיות איכות.
דרישות מוקדמות
- שיהיה להם שילוב של עובד עם בית חכם.
- משלימים את תהליך ניפוי הבאגים ב-Codelab של הבית החכם
מה תלמדו
- איך לכתוב שאילתות אפקטיביות כדי לסנן את יומני השגיאות של הבית החכם
- איך ליצור מדדים מבוססי-יומן כדי להפיק מדדים מהשאילתות
- איך יוצרים תרשימים ולוחות בקרה ממדדים מבוססי יומן למעקב
2. עבודה עם יומנים
כמו שהסברנו בקצרה במאמר ניפוי באגים ב-Smart Home Codelab, עבודה עם יומנים היא המפתח להצלחת הפרויקט שלכם. יש ב-Google Cloud Platform כלים מעולים למעקב ולניתוח של יומנים. כדי לגשת לכל היומנים שזמינים לפרויקט שלכם, תוכלו להשתמש ב-Logs Explorer.
גישה ליומנים
השלב הראשון לגישה ליומנים הוא להתחבר ל-Google Cloud Platform ולבחור את הפרויקט. כדי לעבור אל Logs Explorer, לוחצים על תפריט הצד דרך פעולות > רישום ביומן > Logs Explorer. אחרי שתפתחו את הכלי, אתם אמורים לראות את התצוגה הבאה:
Logs Explorer מורכב משני חלקים עיקריים: קטע שבו כתיבת השאילתות למעלה (הכלי ליצירת שאילתות), ואזור להצגת התוצאות התואמות (תוצאות של שאילתות).
הרבה רכיבים שונים ב-Google כותבים ביומני הפרויקט כברירת מחדל. כדי למצוא ולעבוד עם היומנים שמגיעים מהשילוב של הבית החכם, צריך לכתוב שאילתות מותאמות אישית.
שאילתות לכתיבה
היומנים מתפרסמים בפרויקטים לפי סוג משאב. כל סוג משאב מייצג פלטפורמה שונה ב-Google. היומנים שמגיעים מפלטפורמת הבית החכם זמינים לפרויקט שלכם בסוג המשאב assistant_action_project
.
בנוסף, לכל היומנים מוקצית רמת חומרה בזמן היצירה שלהם. ביומנים של בית חכם, אנחנו משתמשים ברמת ERROR
ביומנים שמייצגים שגיאות וחריגים, וברמה DEBUG
לכל השאר.
בדוגמה הבאה נכתוב שאילתה כדי לסנן יומנים שמגיעים רק מהפלטפורמה שלנו, שמייצגים שגיאות, באופן הבא:
אחרי שמסיימים לכתוב את השאילתה, לוחצים על הלחצן Run query כדי ליצור את השאילתה. הפעולה הזו אמורה להציג שגיאות שנובעות מהשילוב של הבית החכם:
כמו שאפשר לראות, נתקלנו במספר שגיאות שהתרחשו בזמנים שונים במהלך השעה האחרונה. כל שורה מייצגת יומן שגיאות אחד. אפשר ללחוץ גם על היומנים הספציפיים ולהרחיב את השדות המקוננים כדי לראות את המידע שכלול בהם.
שימוש בהיסטוגרמה
Logs Explorer מספק תכונת היסטוגרמה שימושית שמאפשרת לראות את התפלגות הזמן של יומנים שתואמים לשאילתה. כדי להפעיל את ההיסטוגרמה, לוחצים על פריסת דף בלחצנים שבפינה השמאלית העליונה, ומסמנים את התיבה היסטוגרמה כדי להפעיל את התכונה.
לאחר ההפעלה תוצג התפלגות של היומנים שתואמים לשאילתה:
כפי שניתן לראות בתמונה שלמעלה, יש לנו כמה שגיאות שמקובצות בצפיפות במהלך השעה האחרונה. נראה שהם נוצרים בשלושה אשכולות בסביבות השעות 1:45, 14:00 ו-14:15. בעזרת ההיסטוגרמה אתם יכולים לבדוק רק את הערכים של חותמות הזמן כדי לזהות דפוסים שיהיה קשה לראות.
בשלב הזה, השאילתה שבה אנחנו משתמשים לא מבדילה בין יומנים ומציגה את כל השגיאות שנובעות מהשילוב שלנו לבית חכם. במקרים רבים כדאי להבחין בין שגיאות, למשל כדי לעקוב אחר דפוסי שגיאה שמקורם בתכונות או בסוגי מכשירים מסוימים. לשם כך נבחן כתיבת שאילתות מתקדמות.
שאילתות מתקדמות
כשתבדקו את יומן האירועים של הבית החכם, תראו שיש כמה שדות שאפשר לאסוף מהם מידע:
action
trait
: טירגוט של תכונת המכשיר לפי המשתמש (לדוגמה, OnOff, StartStop, Brightness)actionType
: מצב פרטני של התכונה (לדוגמה, הפעלה, כיבוי, השהיה, עצירה, המשך)
device
deviceType
: טירגוט סוג המכשיר לפי המשתמש (לדוגמה, אור, מתג, מכונת כביסה)
status
isSuccess
: האם התוצאה של הפעולה נחשבת כמוצלחת (true / false)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"
אחרי הרצת השאילתה המעודכנת שלנו, המערכת מזהה את היומנים ומציגה את התוצאה המתאימה:
עד עכשיו עשינו את כל השאילתות באופן ידני. זו דרך מצוינת לבדוק במהירות את מצב השגיאות, אבל לא כל כך הרבה כדי לעקוב אחרי השינויים בדפוסי השגיאות לאורך זמן. כדי להפוך את התהליך הזה לאוטומטי ולתעד נתונים מתקופות ארוכות יותר, ניצור מדדים מבוססי יומן.
3. מדדים מבוססי יומן
כדי לספור את מספר היומנים שתואמים לשאילתות שלכם לאורך זמן, אפשר להשתמש במדדים מבוססי-יומן. כך תוכלו לראות דפוסים בכל היומנים ולקבל תובנות טובות לגבי הבעיות הבסיסיות.
יצירת מדד מבוסס-יומן
כדי ליצור מדד מבוסס-יומן, עוברים אל פעולות > רישום ביומן > מדדים מבוססי יומן. תוצג לכם רשימה של מדדים מבוססי-יומן שכבר זמינים בפרויקט שלכם. כשלוחצים על הלחצן יצירת מדד, מוצג המסך ליצירת מדדים מבוססי-יומן:
יש שני סוגים של מדדים ראשיים: מדד נגדי סופר את מספר היומנים שתואמים לשאילתה. מדד הפצה עוקב אחר ההתפלגות הבסיסית ומאפשר פעולות סטטיסטיות כמו ממוצע, חציון והאחוזון ה-95.
אם תגלו למטה תראו קטע סינון שבו תוכלו להקליד את השאילתה.
אנחנו נדביק את השאילתה מהקטע הקודם באזור הטקסט יצירת מסנן.
resource.type="assistant_action_project" AND severity=ERROR AND jsonPayload.executionLog.executionResults.actionResults.action.trait="TRAIT_ON_OFF"
אפשר גם ללחוץ על הלחצן תצוגה מקדימה של יומנים כדי לראות תצוגה מהירה של היומנים הקודמים שתואמים למסנן. בסיום, אפשר ללחוץ על הלחצן יצירת מדד ולהתקדם לקטע הבא.
צפייה בנתוני מדדים שמבוססים על יומנים
אחרי שיצרנו את המדד שמבוסס על יומנים, הוא יהיה זמין בקטע מדדים שהוגדרו על ידי המשתמש בדף 'מדדים מבוססי-יומן'.
בתפריט שתואם למדד מבוסס היומן (3 נקודות), בוחרים באפשרות הצגה ב-Metrics Explorer כדי לראות את הנתונים שנאספים במדד מבוסס-יומן:
אם מתקבלת שגיאה חדשה, היא תתועד באמצעות המדד מבוסס היומן שלנו ותציג אותה בחלון התרשים ב-Metrics Explorer.
מעקב באמצעות מרכזי בקרה בהתאמה אישית
אחרי שראינו שהמדד החדש, שמבוסס על יומנים, פועל כמתוכנן, הגיע הזמן לשמור את תצוגת התרשים במרכז בקרה מותאם אישית. לשם כך, לוחצים על הלחצן Save Chart (שמירת התרשים) בפינה הימנית העליונה של Metrics Explorer. תוצג בקשה לתת שם לתרשים ולבחור את מרכז הבקרה שבו רוצים לשמור:
אחרי שנשמור את התרשים במרכז הבקרה, אנחנו יכולים לגשת אליו בקלות מכאן ואילך. כדי לגשת לרשימת מרכזי הבקרה הזמינים בפרויקט שלכם, מנווטים אל פעולות > מעקב > מרכזי בקרה.
שמרנו את התרשים שלנו בלוח בקרה בשם Codelab Dashboard. פתיחתו תציג את התצוגה הבאה:
התרשים שמייצג את המדד שמבוסס על היומן מוצג כאן, יחד עם הנתונים החדשים שנאספו. היומנים לבית החכם מתפרסמים בפרויקט בזמן אמת. כשיהיה יומן חדש, הוא יופיע מיד לפי המדד מבוסס-היומן.
4. מזל טוב
מעולה! למדתם בהצלחה איך להפוך את השאילתות למדדים מבוססי-יומנים ולשמור אותן במרכזי בקרה מותאמים אישית לצורכי מעקב.
השלבים הבאים
בהמשך ל-Codelab הזה, כדאי לנסות את התרגילים הבאים ולגלות משאבים נוספים:
- קראו את המדריך יצירת מדדי הפצה כדי ליצור מדדים מבוססי-יומן בשדות מספריים, כמו זמן האחזור.
- בספריית השאילתות לדוגמה שמסופקת על ידי Google Cloud, אפשר לראות כמה מהמסננים המורכבים שבהם אפשר להשתמש במדדים מבוססי יומן.