כדאי לבדוק את
לוח הבקרה של סטטוס Firebase, למקרה
יש הפסקה זמנית בשירות Firebase או ב-Performance Monitoring.
איך מתחילים לעבוד עם Performance Monitoring
אם מתחילים להשתמש ב-Performance Monitoring
(iOS+ |
Android |
אינטרנט), פתרון הבעיות הבאות
טיפים יכולים לעזור בפתרון בעיות שקשורות ל-Firebase בזיהוי ה-SDK או בהצגתו
את נתוני הביצועים הראשונים במסוף Firebase.
ה-SDK נוסף לאפליקציה, אבל למסוף
עדיין מופיעה בקשה להוסיף SDK
מערכת Firebase יכולה לזהות אם הוספתם את ה-SDK של Performance Monitoring לאפליקציה בהצלחה, כשהיא מקבלת ממנה את פרטי האירועים (כמו אינטראקציות עם האפליקציה). בדרך כלל, תוך 10 דקות ממועד הפעלת האפליקציה, תוצג ההודעה 'זוהתה ערכת SDK' בלוח הבקרה Performance במסוף Firebase. לאחר מכן, תוך 30
דקות, מרכז הבקרה מציג את הנתונים הראשוניים שעובדו.
אם חלפו יותר מ-10 דקות מאז הוספתם את הגרסה האחרונה של ה-SDK לאפליקציה, ועדיין לא ראיתם שינויים, בדקו את הודעות היומן כדי לוודא ש-Performance Monitoring מתעד אירועים. כדי לפתור את הבעיה של הודעת זיהוי SDK באיחור, אפשר לנסות את שלבי פתרון הבעיות המתאימים שמפורטים בהמשך.
האפליקציה מתעדת אירועים: פתרון בעיות
צעדים
אם אתם עדיין מפתחים באופן מקומי, נסו ליצור עוד אירועים לאיסוף נתונים:
ממשיכים לפתח את האפליקציה באמצעות סימולטור או מכשיר בדיקה.
כדי ליצור אירועים, אפשר להעביר את האפליקציה בין הרקע לחזית
כמה פעמים, לקיים אינטראקציה עם האפליקציה על ידי ניווט בין מסכים
ו/או מפעיל בקשות רשת.
צריך לוודא שההגדרה של Firebase
קובץ (Google-Service-Info.plist) הוא
נוספו כראוי לאפליקציה ושלא שיניתם את הקובץ.
ספציפית, צריך לבדוק את הפרטים הבאים:
לשם של קובץ התצורה לא מצורפים תווים נוספים, כמו
(2)
קובץ התצורה נמצא ברמה הבסיסית (root) של פרויקט ה-XCode ונוסף אל
היעדים הנכונים.
מזהה האפליקציה של Firebase ב-Firebase (GOOGLE_APP_ID) שמצוין בקובץ התצורה הוא
שמתאימים לאפליקציה שלך. מאתרים את מזהה האפליקציה ב-Firebase בכרטיס האפליקציות שלך
של פרויקט settingsשלך
הגדרות.
אם משהו נראה לא תקין בקובץ התצורה של האפליקציה שלכם, נסו את הפעולות הבאות:
מוחקים את קובץ התצורה שנמצא כרגע באפליקציה.
כדי להוריד, פועלים לפי ההוראות האלה.
קובץ תצורה חדש ולהוסיף אותו לאפליקציית Apple.
אם ה-SDK מתעד אירועים ונראה שהכול מוגדר בצורה נכונה,
אבל אתם עדיין לא רואים את ההודעה לזיהוי ה-SDK או את הנתונים שעובדו
(לאחר שעתיים), צריך לפנות לתמיכה של Firebase.
Performance Monitoring מעבד נתונים של אירועי ביצועים לפני הצגתם
מרכז הבקרה לביצועים.
אם חלפו יותר מ-24 שעות מאז 'ה-SDK זוהה' הופיעה הודעה,
ואתם עדיין לא רואים נתונים, כדאי לבדוק
לוח הבקרה של סטטוס Firebase למקרה שיש
הפסקה זמנית ידועה בשירות. אם אין הפסקה זמנית בשירות,
לפנות לתמיכה של Firebase.
פתרון בעיות כלליות
אם הוספת בהצלחה את ה-SDK ואתה משתמש ב-Performance Monitoring באפליקציה שלך,
הטיפים הבאים לפתרון בעיות יכולים לעזור בבעיות כלליות שקשורות
תכונות וכלים של Performance Monitoring.
מרכז הבקרה לבדיקת ביצועים הוא
חסרים נתונים של מעקב המסך
אם חסרים לכם נתונים לנתוני מעקב של עיבוד מסך, אפשר לנסות את הפעולות הבאות
שלבים לפתרון הבעיה:
מרכז הבקרה לבדיקת ביצועים הוא
חסרים נתוני מעקב בהתאמה אישית
האם אתם רואים נתוני ביצועים של עקבות שנאספו באופן אוטומטי אבל לא עבור
מעקבי קוד בהתאמה אישית? אפשר לנסות את הפעולות הבאות כדי לפתור את הבעיה:
לבדוק את ההגדרה של מעקבי קוד בהתאמה אישית, באמצעות
Trace API,
במיוחד את התכנים הבאים:
השמות של מעקבי קוד ומדדים מותאמים אישית חייבים לעמוד בתנאים הבאים:
דרישות: ללא רווח לבן בהתחלה או בסוף, ללא קו תחתון בהתחלה
(_) והאורך המקסימלי הוא 32 תווים.
יש להתחיל ולהפסיק את כל המעקבים. כל מעקב שלא התחיל, שלא
הופסק, או נעצר לפני התחיל, לא יתועדו.
בדקו את ההודעות ביומן כדי לוודא
המערכת של Performance Monitoring רושמת ביומן מעקבי קוד מותאמים אישית צפויים.
אם Performance Monitoring רושם אירועים ביומן, אבל לא מוצגים נתונים אחרי 24 שעות:
פנו לתמיכה של Firebase.
מרכז הבקרה לבדיקת ביצועים
חסרים נתונים של בקשת רשת
אם חסרים נתונים של בקשת רשת, כדאי לנסות את השלבים הבאים לפתרון בעיות:
בהתאם להתנהגות של הקוד וספריות הרשת שמשמשות את
הקוד שלך, Performance Monitoring עשוי לדווח רק על בקשות רשת
הושלמו. כלומר, ייתכן שחיבורי HTTP/S שנותרו פתוחים
לדווח עליהן.
Performance Monitoring לא מדווחת על בקשות רשת עם כותרות Content-Type לא חוקיות. אבל בקשות רשת ללא
Content-Type כותרות עדיין יתקבלו.
ב-Performance Monitoring יש תמיכה בהתראות לגבי מדדים שחורגים מהמספר המותר
בערכי סף מוגדרים. כדי למנוע בלבול עם ערכי הסף שניתנים להגדרה האלו
מדדי ביצועים, הסרנו את היכולת להגדיר ערכי סף
בעיות.
מה קרה לפרטים ולמדדים במסוף Firebase?
החלפנו את הדפים 'פרטים ומדדים' בעיצוב מרכזי וחדש
ממשק משתמש (UI) לשיפור האופן שבו ניתן לפתור בעיות. החדש הזה
ממשק המשתמש לפתרון בעיות מציע את אותה פונקציונליות עיקרית שמציעה פרטים
המדדים המוצעים. מידע נוסף על פתרון בעיות זמין ב-
הצגת נתונים נוספים לגבי מעקב ספציפי
למה מספר הדגימות שונה ממה שציפיתי?
ב-Performance Monitoring נאספים נתוני ביצועים ממכשירי המשתמשים של האפליקציה. אם
יש הרבה משתמשים באפליקציה או אם האפליקציה מניבה ביצועים טובים
פעילות, Performance Monitoring עשוי להגביל את איסוף הנתונים לקבוצת משנה של מכשירים לצורך
לצמצם את מספר האירועים המעובדים. המגבלות האלה מספיק גבוהות כדי
גם עם פחות אירועים, ערכי המדדים עדיין מייצגים את
של חוויית המשתמש באפליקציה.
כדי לנהל את נפח הנתונים שאנחנו אוספים, Performance Monitoring משתמש באפשרויות הבאות
אפשרויות דגימה:
הגבלת קצב השליחה במכשיר: כדי למנוע מהמכשיר לשלוח רצפים פתאומיים של
אנחנו מגבילים את מספר מעקבי הבקשות לרשת ולקוד שנשלחים
ל-300 אירועים כל 10 דקות. הגישה הזו מגינה על המכשיר מפני מכשירי מדידה במעגל שיכולים לשלוח כמויות גדולות של נתוני ביצועים, ומונעת ממכשיר יחיד להטות את מדידות הביצועים.
דגימה דינמית: Performance Monitoring אוספת מגבלה של כ-100 מיליון
אירועים של מעקבי קוד ו-100 מיליון נתוני מעקב אחרי בקשות רשת לכל אפליקציה מדי יום
בקרב כל משתמשי האפליקציה. קצב דגימה דינמי מאוחזר במכשירים (באמצעות
Firebase Remote Config) כדי לקבוע אם מכשיר אקראי
לתעד ולשלוח מעקב. מכשיר שלא נבחר לדגימה לא
לשלוח אירועים. קצב הדגימה הדינמי הוא ספציפי לאפליקציה ומשתנה לפי
כדי להבטיח שהנפח הכולל של הנתונים שנאספים יישאר נמוך מהמגבלה.
במסגרת סשנים של משתמשים, נשלחים נתונים מפורטים נוספים מהמכשיר של המשתמש, מה שמחייב
משאבים נוספים לתעד ולשלוח את הנתונים. כדי למזער את ההשפעה של המשתמשים
סשנים, Performance Monitoring עשוי גם להגביל את מספר הסשנים.
הגבלת קצב שליחה בצד השרת: כדי לוודא שהאפליקציות לא חורגות ממגבלת הדגימה, Performance Monitoring עשוי להשתמש בדגימה בצד השרת כדי לבטל את שליחת חלק מהאירועים שהתקבלו מהמכשירים. אף שהגבלה כזו לא משנה את
של המדדים שלנו, הוא עלול לגרום לשינויים קלים בדפוסים, כולל
הבאים:
מספר המעקבים יכול להיות שונה ממספר הפעמים שבהן קטע קוד הופעל.
מעקבים הצמודים זה לזה בקוד עשויים להכיל מספר שונה של
דוגמאות.
מה קרה לכרטיסייה בעיות במסוף?
החלפנו את הכרטיסייה 'בעיות' בהצגת התראות,
מודיע לכם באופן אוטומטי כשיש חריגה מדרישות הסף שהגדרתם. לא צריך יותר לבדוק באופן ידני את מסוף Firebase כדי לקבוע את הסטטוס של סף מסוים. למידע על התראות, אפשר לעיין במאמר הגדרת התראות לגבי בעיות בביצועים.
מה קרה לכרטיסיות במכשיר ורשת במסוף?
איך אפשר לראות את העקבות שהיו בדפים האלה?
עיצבנו מחדש את הקטע Performance Monitoring במסוף Firebase כך
בכרטיסייה מרכז שליטה מוצגים מדדי המפתח וכל נתוני המעקב שלכם במקום אחד. בתור
חלק מהעיצוב החדש, הסרנו את הדפים במכשיר ורשת.
בטבלת המעקב שבתחתית הכרטיסייה מרכז בקרה מוצגים אותם פרטים
מידע שמוצג בכרטיסיות במכשיר ורשת, אך בחלק
תכונות נוספות, כולל היכולת למיין את העקבות לפי האחוזים
לגבי מדד ספציפי. כדי להציג את כל המדדים והנתונים של נכס ספציפי
של מעקב, לוחצים על שם המעקב בטבלת המעקב.
אפשר להציג את הטרייסים בכרטיסי המשנה הבאים של טבלת הטרייסים:
מעקב אחרי בקשות רשת (גם מחוץ לאריזה וגם מעקב בהתאמה אישית) — כרטיסיית המשנה בקשות רשת
מעקבי קוד בהתאמה אישית – כרטיסיית המשנה מעקבים בהתאמה אישית
נתוני הפעלה של האפליקציה, מעקב אחר אפליקציות קדימה, מעקב אחר אפליקציות ברקע — כרטיסיית המשנה מעקבים בהתאמה אישית
שרטוטים של רינדור המסך – בכרטיסייה המשנית רינדור המסך
מעקב אחר טעינת דפים – כרטיסיית משנה טעינת דף
לקבלת פרטים על טבלת המעקב וצפייה במדדים ובנתונים, אפשר להיכנס
דף הסקירה הכללית של המסוף
(iOS+ |
Android |
אינטרנט).
למה מספר הפריימים האיטיים והפריימים הקפואים לא תואם לציפיות שלי?
המערכת מחשבת את פריימים של רינדור איטי ופריימים קפואים בעזרת מכשיר משוער
קצב רענון של 60Hz. אם קצב הרענון של המכשיר נמוך מ-60Hz, כל פריים
יהיה זמן רינדור איטי יותר כי מתבצע עיבוד של פחות פריימים לשנייה.
זמני רינדור איטיים יותר עלולים לגרום לדיווח על פריימים איטיים או קפואים יותר
כי יותר פריימים יעובדו לאט יותר או ייתקעו. אבל אם מכשיר
קצב הרענון גבוה מ-60Hz, כך שזמן הרינדור של כל פריים יהיה מהיר יותר.
הדבר עשוי לגרום לדיווח על פחות פריימים איטיים או קפואים. זהו
מגבלה ב-SDK של Performance Monitoring.
ייצוא הנתונים של Performance Monitoring שלי נמשך זמן רב מהצפוי אל
ב-BigQuery. זה לא בזמן אמת?
אם הפעלתם את השילוב עם BigQuery ב-Firebase Performance Monitoring, הנתונים ייוּצאו ל-BigQuery 12 עד 24 שעות אחרי סיום היום (לפי שעון החוף המערבי).
לדוגמה, הנתונים מ-19 באפריל יהיו זמינים ב-BigQuery מ-20 באפריל
בין 12:00 בחצות (כל התאריכים והשעות הם לפי שעון החוף המערבי של ארה"ב).
עיבוד נתונים והצגה כמעט בזמן אמת
מה המשמעות של 'כמעט בזמן אמת' בנתוני הביצועים?
Firebase Performance Monitoring תהליכים שנאספו נתוני ביצועים ככל שהם מתקבלים,
יובילו להצגת נתונים כמעט בזמן אמת במסוף Firebase. העיבוד הסתיים
מוצגים במסוף כמה דקות אחרי האיסוף, ולכן
את המונח 'קרוב בזמן אמת'.
כדי לנצל את היתרונות של עיבוד נתונים כמעט בזמן אמת, צריך לוודא שהאפליקציה משתמשת
ערכת SDK שתואמת בזמן אמת
.
איך אפשר לקבל נתוני ביצועים כמעט בזמן אמת של האפליקציה?
כדי לנצל את היתרונות של עיבוד נתונים כמעט בזמן אמת, צריך רק לוודא
שהאפליקציה שלך משתמשת בגרסת SDK Performance Monitoring שתואמת בזמן אמת
עיבוד נתונים.
אלה גרסאות ה-SDK שתואמות בזמן אמת:
iOS — גרסה 7.3.0 ואילך
tvOS – גרסה 8.9.0 ואילך
Android — גרסה 19.0.10 ואילך (או Firebase Android BoM גרסה 26.1.0 ואילך)
אינטרנט – גרסה 7.14.0 ואילך
לתשומת ליבכם: אנחנו תמיד ממליצים להשתמש בגרסה העדכנית ביותר של ה-SDK, אבל
הגרסה שצוינה למעלה תאפשר ל-Performance Monitoring לעבד את הנתונים שלך כמעט
בזמן האימון.
אילו גרסאות של ה-SDK של Performance Monitoring נחשבות כתואמות בזמן אמת?
אלה גרסאות ה-SDK שתואמות לעיבוד נתונים בזמן אמת:
iOS – גרסה 7.3.0 ואילך
tvOS – גרסה 8.9.0 ואילך
Android — גרסה 19.0.10 ואילך (או Firebase Android BoM גרסה 26.1.0 ואילך)
אינטרנט – גרסה 7.14.0 ואילך
לתשומת ליבכם: אנחנו תמיד ממליצים להשתמש בגרסה העדכנית ביותר של ה-SDK, אבל
הגרסה שצוינה למעלה תאפשר ל-Performance Monitoring לעבד את הנתונים שלך כמעט
בזמן האימון.
מה קורה אם לא מעדכנים את האפליקציה לשימוש בגרסת SDK שתואמת בזמן אמת?
אם באפליקציה שלך לא נעשה שימוש בגרסת SDK תואמת בזמן אמת, עדיין תופיע
כל נתוני הביצועים של האפליקציה במסוף Firebase. עם זאת, התצוגה
יהיה עיכוב של כ-36 שעות ממועד הצגת נתוני הביצועים
האוסף 'עדכונים'.
עדכנתי לגרסת SDK תואמת בזמן אמת, אבל חלק מהמשתמשים שלי
עדיין בגרסאות ישנות של האפליקציה שלי. האם אני ממשיך לראות את הביצועים שלהן
נתונים במסוף Firebase?
כן! בלי קשר לגרסת ה-SDK שבה נעשה שימוש במופע של אפליקציה, המידע שיוצג
נתוני ביצועים מכל המשתמשים.
עם זאת, אם אתם בודקים נתונים עדכניים (שנאספו לפני פחות מ-36 שעות), הנתונים שמוצגים הם ממשתמשים במופעי אפליקציה שמשתמשים בגרסה תואמת של SDK בזמן אמת. עם זאת, הנתונים הלא עדכניים כוללים נתוני ביצועים
מכל הגרסאות של האפליקציה.
יצירת קשר עם התמיכה של Firebase
אם
לפנות לתמיכה של Firebase,
לכלול תמיד את מזהה האפליקציה ב-Firebase. מוצאים את מזהה האפליקציה ב-Firebase בקטע
כרטיס האפליקציות שלך של
settingsפרויקט
הגדרות.