1. לפני שמתחילים
כפי שהסברנו בניפוי באגים ב-codelab ב-Smart Home, אנחנו מפרסמים מדדים ויומנים בפרויקטים שלך לבית חכם. מדדים עוזרים לכם לקבוע איפה נתקלת בבעיות בפעולת הבית החכם, ובעזרת יומנים אפשר להתעמק בנתונים ולפתור את הבעיות האלה.
בנוסף למדדים שאנחנו מציעים לפרויקט שלכם, אתם יכולים גם ליצור מדדים משלכם באמצעות המדדים מבוססי היומן מ-Google Cloud Platform. כך תוכלו לעקוב אחרי דפוסים מסוימים ביומנים ולנפות באגים ביעילות.
דרישות מוקדמות
- שילוב עם מכשירים לבית חכם
- השלמת ניפוי באגים ב-Codelab של בית חכם
מה תלמדו
- איך לכתוב שאילתות יעילות לסינון יומני שגיאות של בית חכם
- איך ליצור מדדים מבוססי יומן כדי ליצור מדדים מהשאילתות שלכם
- איך ליצור תרשימים ומרכזי בקרה ממדדים מבוססי-יומן לצורך מעקב
2. עבודה עם יומנים
כמו שהסברנו בקצרה בניפוי באגים ב-Codelab של Smart Home, עבודה עם יומנים היא המפתח להצלחת הפרויקט שלכם. יש כלים מעולים ב-Google Cloud Platform למעקב ולניתוח של היומנים. כדי לגשת לכל היומנים הזמינים לפרויקט, משתמשים ב-Logs Explorer.
גישה ליומנים
השלב הראשון כדי לגשת ליומנים הוא להתחבר אל Google Cloud Platform ולבחור את הפרויקט שלכם. עוברים אל Logs Explorer דרך תפריט הצד ועוברים אל Operations > Logging > Logs Explorer. לאחר שתפתחו את הכלי, אתם אמורים לראות את התצוגה הבאה:
Logs Explorer מורכב משני קטעים עיקריים: קטע שבו כותבים את השאילתות למעלה (Query builder), ואזור להצגת התוצאות התואמות (תוצאות של שאילתות).
רכיבים שונים רבים ב-Google כותבים יומנים לפרויקט כברירת מחדל. כדי למצוא את היומנים שמגיעים מהשילוב של הבית החכם ולעבוד איתם, צריך לכתוב שאילתות בהתאמה אישית.
שאילתות לכתיבה
היומנים מתפרסמים בפרויקטים לפי סוג משאב. כל סוג משאב מייצג פלטפורמה שונה ב-Google. היומנים שמגיעים מפלטפורמת הבית החכם זמינים לפרויקט שלכם בסוג המשאב assistant_action_project
.
בנוסף, לכל היומנים מוקצית רמת חומרה כשיוצרים אותם. ביומנים של בית חכם, אנחנו משתמשים ברמת ERROR
ליומנים שמייצגים שגיאות וחריגים, וברמת DEBUG
לכל שאר היומנים.
בדוגמה הבאה נכתוב שאילתה לסינון יומנים שמגיעים רק מהפלטפורמה שלנו שמייצגים שגיאות, באופן הבא:
אחרי שמסיימים לכתוב את השאילתה, לוחצים על הלחצן Run query כדי להתחיל אותה. אמורות להופיע שגיאות מהשילוב של הבית החכם:
יש לנו מספר שגיאות שהתרחשו בזמנים שונים בשעה האחרונה. כל שורה מייצגת יומן שגיאות אחד. תוכל להמשיך ללחוץ על היומנים הנפרדים ולהרחיב שדות מקוננים כדי לראות את המידע שנכלל בהם.
שימוש בהיסטוגרמה
Logs Explorer מספק תכונת היסטוגרמה שימושית כדי לראות את התפלגות הזמן של יומנים שתואמים לשאילתה שלך. כדי להפעיל את ההיסטוגרמה, לוחצים על PAGE LAYOUT מלחצני הפינה השמאלית העליונה ומסמנים את היסטוגרמה כדי להפעיל את התכונה.
לאחר ההפעלה, תוצג התפלגות של היומנים שתואמים לשאילתה:
כמו שאפשר לראות בתמונה שלמעלה, יש לנו כמה שגיאות שקובצו באשכולות בשעה האחרונה. נראה שהם יוצרים שלושה אשכולות בסביבות השעה 13:45, 14:00 ו-14:15. בעזרת ההיסטוגרמה אפשר לזהות דפוסים שהיה קשה לראות אותם רק באמצעות בדיקת הערכים של חותמת הזמן.
נכון לעכשיו, השאילתה שבה אנחנו משתמשים לא מבחינה בין יומנים, והיא מראה לנו את כל השגיאות שנובעות מהשילוב שלנו בבית החכם. יש מקרים רבים שבהם כדאי להבחין בין שגיאות, למשל כדי לעקוב אחר דפוסי שגיאות המבוססים על תכונות או סוגים מסוימים של מכשירים. כדי לעשות זאת, נלמד על כתיבת שאילתות מתקדמות.
שאילתות מתקדמות
כשבודקים את יומן האירועים של הבית החכם, מוצגים שדות שונים שניתן לאסוף מהם מידע:
action
trait
: טירגוט מאפייני המכשיר לפי המשתמש (לדוגמה: OnOFF, StartStop ובהירות)actionType
: מצב גרעיניות עדין של התכונה (לדוגמה: פועל, כבוי, השהיה, עצירה, המשך)
device
deviceType
: טירגוט של סוג המכשיר לפי המשתמש (לדוגמה: תאורה, מתג, מכונת כביסה)
status
isSuccess
: האם תוצאת הפעולה נחשבת כמוצלחת (נכון / לא נכון)statusType
: קוד הסטטוס של תוצאת הפעולה (מציין קוד שגיאה אם הפעולה נכשלה)externalDebugString
: מחרוזת ניפוי באגים של הפעולה (מתארת את השגיאה בפירוט)
שדות אחרים
יש גם שדות נוספים שמהם אפשר להפיק מידע:
requestId
: מזהה ייחודי שמשויך לבקשה (שנוצרה על ידי Google)executionType
: הנתיב שבו משתמשת הבקשה (מציין אם בענן או מקומי)latencyMsec
: זמן האחזור המשוער של הבקשה בשרתי Google (במילי-שניות)locale
: מאיזה צמד שפה/אזור הבקשה נשלחת (לדוגמה: en-US, fr-FR)
נשתמש בשדה trait מהרשימה שלמעלה, ואנחנו נשנה את השאילתה כך שתכלול רק שגיאות שמקורן ב-trait OnOff באופן הבא:
resource.type="assistant_action_project" AND severity=ERROR AND jsonPayload.executionLog.executionResults.actionResults.action.trait="TRAIT_ON_OFF"
אחרי הרצת השאילתה המעודכנת, המערכת מזהה את היומנים ומציגה לנו את התוצאה המתאימה:
עד עכשיו ערכנו את כל השאילתות שלנו באופן ידני. זו דרך נהדרת לבדוק במהירות את מצב השגיאות, אבל לא כל כך הרבה כדי לעקוב אחר השינויים בדפוסי השגיאה לאורך זמן. כדי להפוך את התהליך הזה לאוטומטי ולתעד נתונים מתקופות ארוכות יותר, ניצור מדדים מבוססי-יומנים.
3. מדדים מבוססי יומנים
כדי לספור את מספר היומנים שתואמים לשאילתות שלכם לאורך זמן, אפשר להשתמש במדדים מבוססי-יומן. כך תוכל לראות דפוסים ואת כל היומנים ולהפיק תובנות טובות לגבי הבעיות הבסיסיות.
יצירת מדד מבוסס-יומנים
כדי ליצור מדד מבוסס-יומן, עוברים אל Operations > Logging > Log-based Metrics. פעולה זו תציג את רשימת המדדים מבוססי-היומן שכבר זמינים בפרויקט שלך. אחרי שלוחצים על הלחצן יצירת מדד, מוצג מסך היצירה של מדד מבוסס-יומן:
יש שני סוגים של מדדים ראשיים: מדד מונה סופר את מספר היומנים שתואמים לשאילתה. מדד התפלגות עוקב אחר ההתפלגות הבסיסית ומאפשר פעולות סטטיסטיות כגון ממוצע, חציון ומאון ה-95.
אם גללו מטה תראו קטע סינון שבו תוכלו להקליד את השאילתה.
נדביק את השאילתה שלנו מהקטע הקודם באזור הטקסט יצירת מסנן.
resource.type="assistant_action_project" AND severity=ERROR AND jsonPayload.executionLog.executionResults.actionResults.action.trait="TRAIT_ON_OFF"
אפשר גם ללחוץ על הלחצן תצוגה מקדימה של יומנים כדי לראות תצוגה מהירה של יומנים קודמים שתואמים למסנן שלכם. בסיום, אפשר ללחוץ על הלחצן יצירת מדד ולהתקדם לקטע הבא.
הצגת נתוני מדדים מבוססי יומנים
עכשיו, לאחר שהמדד מבוסס-היומן נוצר, הוא יהיה זמין בקטע מדדים שהוגדרו על ידי המשתמש בדף 'מדדים מבוססי יומן'.
בתפריט של המדד שמבוסס על יומן (3 נקודות), בוחרים באפשרות הצגה ב-Metrics Explorer כדי לראות את הנתונים שנאספים במדד מבוסס-היומן:
כשיש שגיאה חדשה, היא תתועד במדד מבוסס-היומן ומוצגת בחלון התרשים ב-Metrics Explorer.
מעקב דרך מרכזי בקרה בהתאמה אישית
אחרי שאנחנו רואים שהמדד החדש שמבוסס על יומן פועל כמו שצריך, זה הזמן לשמור את תצוגת התרשים במרכז בקרה בהתאמה אישית. בשלב הזה, לוחצים על הלחצן שמירת תרשים בפינה השמאלית העליונה של Metrics Explorer. תוצג בקשה לתת שם לתרשים ולבחור את מרכז הבקרה שבו רוצים לשמור:
אחרי שנשמור את התרשים במרכז בקרה, נוכל לגשת אליו בקלות משם. כדי לגשת לרשימת מרכזי הבקרה שזמינים בפרויקט שלכם, עוברים אל פעולות > מעקב > מרכזי בקרה.
שמרנו את התרשים שלנו במרכז בקרה בשם Codelab Dashboard. לאחר הפתיחה שלו, תופיע התצוגה הבאה:
התרשים שמייצג את המדד המבוסס על היומן מוצג כאן, יחד עם הנתונים החדשים שנאספו. יומני הבית החכם מתפרסמים בפרויקט בזמן אמת. כאשר יומן חדש זמין, הוא יוצג מיד לפי הערך המבוסס על היומן.
4. מזל טוב
כל הכבוד! למדתם בהצלחה איך להפוך את השאילתות למדדים מבוססי-יומן ולשמור אותן במרכזי בקרה מותאמים אישית לצורך מעקב.
השלבים הבאים
כדי לפתח את Codelab, כדאי לנסות את התרגילים הבאים ומשאבים נוספים:
- כדאי לעיין במדריך יצירת מדדי הפצה כדי ליצור מדדים מבוססי-יומן בשדות מספריים, כמו זמן אחזור.
- בספריית השאילתות לדוגמה שמסופקת על ידי Google Cloud תוכלו לראות כמה מהמסננים המורכבים שבהם אפשר להשתמש למדדים מבוססי יומן.