הגדרת התראות לגבי בעיות בביצועים

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

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

מה מפעיל התראה?

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

זמן ההפעלה של האפליקציה

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

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

עקבות של קוד בהתאמה אישית

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

  • מערכת Firebase רשמה לפחות 100 דגימות של מעקב אחר קוד מותאם אישית בגרסה האחרונה של האפליקציה בשעה האחרונה.
  • משך המעקב חרג מהסף שהוגדר לאפליקציה במהלך השעה האחרונה, ומהאחוזון שהוגדר.
  • (ל-iOS+ ול-Android בלבד) לא הופקה התראה קודמת לגבי אותו סף בגרסה האחרונה של האפליקציה.
  • (לאתרים בלבד) לא הופקה התראה קודמת לגבי אותו סף ב-3 הימים האחרונים.

בקשות רשת

כשמגדירים התראה למדד של בקשה לרשת, ההתראה מופעלת אם כל התנאים הבאים מתקיימים:

  • מערכת Firebase רשמה לפחות 100 דוגמאות שתאמו לתבנית כתובת ה-URL בכל הגרסאות של האפליקציה בשעה האחרונה.
  • הערך המצטבר של המדד חצה את ערך הסף שהוגדר במהלך השעה האחרונה:
    • זמן התגובה: הערך המצטבר חרג מסף ההגדרה של האחוזון שהוגדר
    • שיעור ההצלחה: (ל-iOS+/Android בלבד) הערך המצטבר ירד מתחת לסף שהוגדר בכל המשתמשים
  • לא הופעלה התראה בעבר לגבי אותו סף ב-3 הימים האחרונים.

עיבוד המסך

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

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

טעינות דפים

כשמגדירים התראה לגבי מדד של טעינת דף, ההתראה מופעלת אם כל התנאים הבאים מתקיימים:

  • מערכת Firebase רשמה לפחות 100 דגימות של טעינת הדף באפליקציה שלך בשעה האחרונה.
  • הערך המצטבר של המדד חצה את הסף המוגדר במהלך השעה האחרונה, וגם עבור האחוזון שהוגדר:
    • השהיה לאחר קלט ראשוני (FID): הערך המצטבר חרג מהסף שהוגדר ומהאחוזון שהוגדר
    • הצגת התוכן העיקרי הראשון: הערך המצטבר חרג מהסף שהוגדר ומהאחוזון שהוגדר
    • first paint: the aggregated value exceeded the set threshold and the configured percentile
  • לא הופעלה התראה בעבר לגבי אותו סף ב-3 הימים האחרונים.

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

התראות לגבי מדדי ביצועים אחרים או לגבי שילובים מובנים של Firebase עם Slack,‏ Jira ו-PagerDuty לא זמינות להתראות של Performance Monitoring.

קבלת התראות

קבלת התראות ברירת מחדל

כברירת מחדל, Firebase יכול לשלוח Performance Monitoring התראות באימייל.

כדי לקבל התראות לגבי Performance Monitoring באמצעות מנגנון ברירת המחדל הזה, צריך לקבל את ההרשאה firebaseperformance.config.update. התפקידים הבאים כוללים את ההרשאה הנדרשת הזו כברירת מחדל:

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

הפעלה או השבתה של התראות בחשבון שלכם

אתם יכולים להפעיל או להשבית את ההתראות בחשבון שלכם בלי שזה ישפיע על חברים אחרים בפרויקט.Performance Monitoring חשוב לזכור שעדיין צריך את ההרשאות הנדרשות כדי לקבל התראות.

כדי להפעיל או להשבית את ההתראות של Performance Monitoring:

  1. בפינה השמאלית העליונה של Firebase console, עוברים אל Firebase alerts.
  2. אחר כך עוברים אל הגדרות ומגדירים את ההעדפה של החשבון לגבי Performance Monitoringהתראות.

הגדרת התראות מתקדמות לשירותי צד שלישי

אפשר גם לשלוח התראות של Performance Monitoring לערוץ ההתראות המועדף של הצוות באמצעות Cloud Functions for Firebase. לדוגמה, אפשר לכתוב פונקציה שתתעד אירוע התראה לגבי זמן הפעלה איטי של אפליקציה, ותפרסם את פרטי ההתראה בשירות של צד שלישי, כמו Discord, ‏ Slack או Jira.

כדי להגדיר יכולות מתקדמות של התראות באמצעות Cloud Functions for Firebase, פועלים לפי השלבים הבאים:

  1. מגדירים את Cloud Functions for Firebase, שכולל את המשימות הבאות:

    1. מגדירים סביבת פיתוח ל-Node.js או ל-Python.
    2. מתקינים את Firebase CLI ונכנסים לחשבון.
    3. מאתחלים את Cloud Functions for Firebase באמצעות ה-CLI של Firebase.
  2. כותבים ופורסים פונקציה שתתעד אירוע התראה מ-Performance Monitoring ותטפל במטען הייעודי (payload) של האירוע (לדוגמה, תפרסם את פרטי ההתראה בהודעה ב-Discord).

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

הסרה אוטומטית של התראות לא חוקיות

Performance Monitoring מאמתת התראות כדי לוודא שהנתונים תקינים ושההתראות נמצאות בשימוש פעיל. התראות נחשבות תקפות אם מתקיים אחד מהתנאים הבאים:

  • ההתראה נוצרת עבור מזהה משאב ש-Performance Monitoring קיבל לגביו נתונים ב-90 הימים האחרונים.
  • ההתראה נוצרה לאחרונה עבור תבנית מותאמת אישית של כתובת URL. אחרי שיוצרים תבנית מותאמת אישית של כתובת URL ומגדירים התראה, יש 90 ימים לשליחת נתונים לתבנית הזו. אם לא יישלחו נתונים בפרק הזמן של 90 יום, Performance Monitoring יסיר את ההתראה הזו. מידע נוסף על תבניות של כתובות URL מותאמות אישית זמין במאמר בנושא צבירת נתונים לפי תבניות של כתובות URL מותאמות אישית.

אם אחד מהתנאים האלה לא מתקיים, Performance Monitoring מסיר את ההתראה.

הגדרת התראה

כדי להגדיר התראות לגבי Performance Monitoring, צריך הרשאה מסוג firebaseperformance.config.update. ההרשאה הנדרשת הזו כלולה כברירת מחדל בתפקידים הבאים: אדמין ב-Firebase Performance,‏ אדמין ב-Firebase Quality,‏ אדמין ב-Firebase ובעלים או עורך בפרויקט.

אם עדיין לא עשיתם את זה, צריך להוסיף את Performance Monitoring SDK העדכני ביותר לאפליקציה. מידע נוסף זמין במדריכי תחילת העבודה לפלטפורמות web,‏ Android,‏ Apple ו-Flutter.

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

הגדרת התראה בטבלת המעקב

  1. עוברים לכרטיסייה מרכז הבקרה במסוף Firebase ובוחרים את האפליקציה שרוצים להגדיר עבורה התראה.Performance Monitoring

  2. גוללים למטה לטבלת העקבות בתחתית המסך.

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

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

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

הגדרת התראה בכרטיס הדוח בלוח הבקרה

  1. עוברים לכרטיסייה מרכז הבקרה במסוף Firebase ובוחרים את האפליקציה שרוצים להגדיר עבורה התראה.Performance Monitoring

  2. בכרטיסייה Report card (כרטיס דוח), מאתרים את כרטיס המדד שרוצים להגדיר עבורו התראה.

  3. בכרטיס המדד הרצוי, פותחים את תפריט האפשרויות הנוספות () ובוחרים באפשרות הגדרות ההתראות.

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

שיטות מומלצות להגדרת התראת ביצועים

בקשות רשת

מערכת Firebase מצברת את הנתונים מבקשות רשת דומות לפי תבניות של כתובות URL. התבניות יכולות להיות אחת מהאפשרויות הבאות:

הגדרת התראות לתבניות מותאמות אישית של כתובות URL

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

הגדרת התראות לתבניות אוטומטיות של כתובות URL

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

טעינות של דפי אינטרנט

במאמר בנושא Core Web Vitals מוסבר מהם ערכי הסף המומלצים למדידת מדדים באתרים.

עיבודים של המסך

כדי להבטיח חוויה אופטימלית באפליקציה, סשנים של משתמשים לא צריכים לכלול פריימים איטיים או קפואים. Performance Monitoring ממליץ להגדיר התראות על פריימים קפואים שגדולים מ-1% ועל פריימים איטיים שגדולים מ-5%. הערכים האלה מוגדרים כברירת מחדל כשמגדירים התראות על ביצועים. מידע נוסף על שיעור הפריימים שקופאים ליותר מדי זמן ועל שיטות מומלצות אחרות לשיפור הביצועים של האפליקציה זמין בהנחיות של Google Play.