Performance Monitoring משתמש בעקבות כדי לאסוף נתונים על תהליכים מפוקחים באפליקציה. עקבה היא דוח שמכיל נתונים שנאספו בין שתי נקודות זמן באפליקציה.
באפליקציות ל-Apple ול-Android, Performance Monitoring מודד באופן אוטומטי את ביצועי העיבוד של מסכים שונים באפליקציה. Performance Monitoring יוצר trace של עיבוד המסך לכל מסך באפליקציה. המעקבים האלה אוספים ומודדים את המדדים הבאים:
פריימים עם רינדור איטי – מדד שמציג את אחוז המקרים במסך שבהם הרינדור נמשך יותר מ-16 אלפיות השנייה.
פריימים קפואים – מדד שמייצג את אחוז המקרים במסך שבהם הרינדור נמשך יותר מ-700 אלפיות השנייה.
פריימים איטיים או קפואים באפליקציה עלולים לגרום לביצועים ירודים של המכשיר, שנקראים גם 'ג'אנק' או 'לאג'. המדדים של פריימים קפואים ורינדור איטי יכולים לעזור לכם לזהות מסכים שרמת הביצועים שלהם נמוכה, וכך תוכלו לשפר את ביצועי הרינדור של האפליקציה.
אפשר לראות את הנתונים של מעקב אחר עיבוד המסך בכרטיסייה Screen rendering (עיבוד המסך) בטבלת המעקב. טבלת העקבות ממוקמת בתחתית הדף ביצועים במסוף Firebase. מידע נוסף זמין במאמר מעקב אחרי נתוני ביצועים, הצגה וסינון שלהם.
מדדים שנאספים על ידי עקבות של רינדור מסך
אלה עקבות מוכנים מראש, ולכן אי אפשר להוסיף להם מדדים מותאמים אישית או מאפיינים מותאמים אישית.
פריימים עם רינדור איטי ופריימים קפואים מחושבים על סמך קצב רענון משוער של המכשיר, שהוא 60Hz. אם קצב הרענון של המכשיר נמוך מ-60Hz, לכל פריים יהיה זמן רינדור איטי יותר כי פחות פריימים עוברים רינדור בכל שנייה. זמני רינדור איטיים יותר עלולים לגרום לדיווח על יותר פריימים איטיים או קפואים, כי יותר פריימים ירונדרו לאט יותר או יקפאו. עם זאת, אם קצב הרענון של המכשיר גבוה מ-60Hz, כל פריים ירונדר מהר יותר. כתוצאה מכך, יכול להיות שיופיעו פחות דיווחים על פריימים איטיים או קפואים. זוהי הגבלה נוכחית ב-Performance Monitoring SDK.
פריימים עם רינדור איטי
המדד הזה הוא אחוז הסשנים של המשתמשים שבהם חוו עיבוד איטי במידה ניכרת במסך ספציפי. באופן ספציפי, המדד הזה הוא אחוז המקרים של מסכים שבהם זמן הרינדור של יותר מ-50% מהפריימים היה ארוך מ-16 אלפיות השנייה.
פריימים קפואים
המדד הזה הוא אחוז הסשנים של המשתמשים שבהם נתקלו במספר משמעותי של פריימים קפואים במסך ספציפי. באופן ספציפי, המדד הזה הוא אחוז המקרים של מסכים שבהם זמן הרינדור של יותר מ-0.1% מהפריימים היה ארוך מ-700 אלפיות השנייה.
איך נוצרים עקבות של עיבוד מסך?
כל מעקב אחר עיבוד מסך מזוהה לפי השם של רכיב התצוגה באפליקציה. לקוח Performance Monitoring יוצר מעקב אחר עיבוד המסך לכל Activity או Fragment שהאפליקציה משתמשת בהם.
בכל מעקב אחר עיבוד מסך מתבצעות הפעולות הבאות:
הפעולה מתחילה לכל מחלקת פעילות ו-fragment כשהאובייקט הופך לגלוי במסך.
OnActivityStarted()לפעילויות ו-OnFragmentResume()למקטעים.הפעולה נעצרת לכל פעילות ולכל מחלקת fragment כשהאובייקט לא גלוי במסך.
OnActivityStopped()לפעילויות ו-OnFragmentPaused()לקטעים.
מעקב, צפייה וסינון של נתוני ביצועים
כדי לראות נתוני ביצועים בזמן אמת, צריך לוודא שהאפליקציה משתמשת בגרסת SDK של Performance Monitoring שתואמת לעיבוד נתונים בזמן אמת. מידע נוסף על נתוני ביצועים בזמן אמת
מעקב אחרי מדדי מפתח במרכז הבקרה
כדי לראות את המגמות של מדדי המפתח, מוסיפים אותם ללוח המדדים בחלק העליון של מרכז הבקרה ביצועים. אפשר לזהות במהירות רגרסיות על ידי השוואה בין השינויים משבוע לשבוע, או לוודא שהשינויים האחרונים בקוד משפרים את הביצועים.
לוח הבקרה של מעקב אחרי ביצועים ב-Firebase" />
כדי להוסיף מדד ללוח המדדים, פועלים לפי השלבים הבאים:
- נכנסים אל לוח הבקרה לביצועים במסוף Firebase.
- לוחצים על כרטיס מדד ריק ובוחרים מדד קיים להוספה ללוח.
- לוחצים על בכרטיס מדד עם נתונים כדי לראות עוד אפשרויות, למשל להחלפה או להסרה של מדד.
בלוח המדדים מוצגים נתונים של מדדים שנאספו לאורך זמן, גם בצורה גרפית וגם כשינוי מספרי באחוזים.
הצגת ביצועי המסך במסוף
כדי לראות את העקבות, עוברים אל לוח הבקרה 'ביצועים' במסוף Firebase, גוללים למטה אל טבלת העקבות ולוחצים על כרטיסיית המשנה המתאימה. בטבלה מוצגים כמה מדדים מובילים לכל מעקב, ואפשר אפילו למיין את הרשימה לפי אחוז השינוי במדד ספציפי.
Performance Monitoring מספק דף לפתרון בעיות במסוף Firebase, שבו מודגשים שינויים במדדים. כך קל לטפל בבעיות בביצועים ולצמצם את ההשפעה שלהן על האפליקציות והמשתמשים. אפשר להשתמש בדף פתרון הבעיות כשמגלים על בעיות פוטנציאליות בביצועים, למשל בתרחישים הבאים:
- אתם בוחרים מדדים רלוונטיים בלוח הבקרה ומבחינים בדלתא גדולה.
- בטבלת העקבות, ממיינים כך שהדלתאות הגדולות ביותר יוצגו בחלק העליון, ורואים שינוי משמעותי באחוזים.
- אתם מקבלים התראה באימייל על בעיה בביצועים.
אפשר לגשת לדף לפתרון בעיות בדרכים הבאות:
- במרכז הבקרה של המדדים, לוחצים על הלחצן הצגת פרטי המדד.
- בכל כרטיס מדד, לוחצים על
=> הצגת פרטים . בדף פתרון הבעיות מוצג מידע על המדד שבחרתם. - בטבלת העקבות, לוחצים על שם של עקבה או על ערך מדד כלשהו בשורה שמשויכת לעקבה הזו.
- בהתראה באימייל, לוחצים על Investigate now (בדיקה עכשיו).
כשלוחצים על שם של מעקב בטבלת המעקבים, אפשר להציג את פירוט המדדים שמעניינים אתכם. לוחצים על הלחצן
נתונים ממעקב אחרי ביצועים ב-Firebase שמסוננים לפי מאפיין" />
- אפשר לסנן לפי גרסת האפליקציה כדי לראות נתונים על גרסה קודמת או על הגרסה האחרונה
- מסננים לפי מכשיר כדי לראות איך מכשירים ישנים יותר מטפלים באפליקציה
- כדי לוודא שהמיקום של מסד הנתונים לא משפיע על אזור מסוים, אפשר לסנן לפי מדינה.
מידע נוסף על הצגת נתונים של עקבות
מאפייני קטע
באפליקציות ל-Android, אפשר לעשות שימוש חוזר בקטעים עם פעילות או קטע אחרים. הביצועים של קטע קוד עשויים להשתנות בהתאם לקטע או לפעילות שבהם הקטע מוצג. כדי לקבל מידע מפורט על הביצועים של פרגמנט בתוך פרגמנט האב, על סמך הפעילות או הפרגמנט שאליהם הפרגמנט משויך, משתמשים במאפיינים הבאים:
לוח הבקרה למעקב אחרי הביצועים" />
- Hosting_activity – הפעילות שמארחת את ה-fragment. הנתון הזה מאפשר לכם להבין את הביצועים של הפריט בפעילות המארחת.
- Parent_fragment – פרגמנט האב של הפרגמנט שאתם בודקים. הוא מאפשר לכם להבין את הביצועים של קטע הקוד בתוך קטע הקוד הראשי. אם אין פרגמנטים של רכיב אב, ערך המאפיין הוא No Parent.
השלבים הבאים
מידע נוסף על שימוש במאפיינים לבדיקת נתוני ביצועים
מידע נוסף על מעקב אחר בעיות בביצועים במסוף Firebase