הוספת מעקב מותאם אישית לקוד של אפליקציה ספציפית


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

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

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

בקוד, מגדירים את ההתחלה והסיום של מעקב קוד בהתאמה אישית באמצעות ממשקי ה-API שסופקו על ידי Performance Monitoring SDK. באפליקציות ל-Android, תוכלו גם לעקוב אחרי שיטות ספציפיות באמצעות הערה אחת (@AddTrace). אפשר להתחיל מעקב אחר קוד בהתאמה אישית בכל שלב אחרי היצירה שלו, והוא בטוח לשימוש בכמה שרשורים בו-זמנית.

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

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

מאפייני ברירת מחדל, מאפיינים מותאמים אישית ומדדים מותאמים אישית

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

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

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

הוספת מעקבי קוד בהתאמה אישית

שימוש בPerformance Monitoring Trace API כדי להוסיף עקבות קוד מותאמים אישית כדי לעקוב אחר קוד של אפליקציה ספציפית.

שימו לב לנקודות הבאות:

  • לאפליקציה יכולים להיות כמה מעקבים של קוד בהתאמה אישית.
  • ניתן להפעיל בו-זמנית יותר ממעקב אחד של קוד מותאם אישית.
  • השמות של מעקב הקוד המותאם אישית חייבים לעמוד בדרישות הבאות: אסור לכלול רווח לבן בתחילת השם או בסוף השם, אסור לכלול קו תחתון (_) בתחילת השם, והאורך המקסימלי של השם הוא 100 תווים.
  • מעקבי קוד בהתאמה אישית תומכים בהוספת מדדים מותאמים אישית מאפיינים מותאמים אישית.

כדי להתחיל ולעצור מעקב אחר קוד בהתאמה אישית, צריך לעטוף את הקוד שרוצים לעקוב אחריו בשורות קוד דומות לקוד הבא (בדוגמה הזו נעשה שימוש בשם מעקב מותאם אישית בשם test_trace):

Kotlin+KTX

// Import these Performance Monitoring classes at the top of your `.kt` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.Trace;

val myTrace = Firebase.performance.newTrace("test_trace")
myTrace.start()

// code that you want to trace

myTrace.stop()

Java

// Import these Performance Monitoring classes at the top of your `.java` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.Trace;

Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace");
myTrace.start();

// code that you want to trace

myTrace.stop();

(אופציונלי) מעקב אחר שיטות ספציפיות באמצעות @AddTrace

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

לדוגמה, אפשר ליצור מעקב קוד בהתאמה אישית בשם onCreateTrace שרץ כשמתבצעת קריאה ל-method onCreate().

Kotlin+KTX

// Import these Performance Monitoring classes at the top of your `.kt` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.AddTrace;

// Add the `@AddTrace` annotation above the method you want to trace
// the `enabled` argument is optional and defaults to true
@AddTrace(name = "onCreateTrace", enabled = true)
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
}

Java

// Import these Performance Monitoring classes at the top of your `.java` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.AddTrace;

// Add the `@AddTrace` annotation above the method you want to trace
@Override
@AddTrace(name = "onCreateTrace", enabled = true /* optional */)
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
}

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

אפשר להשתמש ב-Performance MonitoringTrace API כדי להוסיף מדדים מותאמים אישית למעקב אחר קוד מותאם אישית.

שימו לב לנקודות הבאות:

  • השמות של המדדים המותאמים אישית חייבים לעמוד בדרישות הבאות: אסור לכלול רווחים בתחילת השם או בסוף השם, אסור לכלול קו תחתון (_) בתחילת השם, והאורך המקסימלי הוא 100 תווים.
  • כל מעקב אחר קוד מותאם אישית יכול לתעד עד 32 מדדים (כולל מדד ברירת המחדל משך זמן).

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

Kotlin+KTX

val myTrace = Firebase.performance.newTrace("test_trace")
myTrace.start()

// code that you want to trace (and log custom metrics)
val item = cache.fetch("item")
if (item != null) {
    myTrace.incrementMetric("item_cache_hit", 1)
} else {
    myTrace.incrementMetric("item_cache_miss", 1)
}

myTrace.stop()

Java

Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace");
myTrace.start();

// code that you want to trace (and log custom metrics)
Item item = cache.fetch("item");
if (item != null) {
    myTrace.incrementMetric("item_cache_hit", 1);
} else {
    myTrace.incrementMetric("item_cache_miss", 1);
}

myTrace.stop();

יצירת מאפיינים מותאמים אישית למעקבי קוד בהתאמה אישית

שימוש בPerformance Monitoring Trace API כדי להוסיף מאפיינים מותאמים אישית למעקבי קוד בהתאמה אישית.

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

שימו לב לנקודות הבאות:

  • שמות של מאפיינים מותאמים אישית חייבים לעמוד בדרישות הבאות:

    • ללא רווח לבן בהתחלה או בסוף, ללא תו של קו תחתון בהתחלה (_)
    • אין מרחבים
    • האורך המקסימלי הוא 32 תווים.
    • התווים המותרים בשם הם A-Z, ‏a-z ו-_.
  • כל מעקב קוד מותאם אישית יכול לתעד עד 5 מאפיינים מותאמים אישית.

  • עליך לוודא שהמאפיינים המותאמים אישית לא מכילים מידע מזהה באופן אישי אדם מסוים בפני Google.

    מידע נוסף על ההנחיה הזו

Kotlin+KTX

Firebase.performance.newTrace("test_trace").trace {
    // Update scenario.
    putAttribute("experiment", "A")

    // Reading scenario.
    val experimentValue = getAttribute("experiment")

    // Delete scenario.
    removeAttribute("experiment")

    // Read attributes.
    val traceAttributes = this.attributes
}

Java

Trace trace = FirebasePerformance.getInstance().newTrace("test_trace");

// Update scenario.
trace.putAttribute("experiment", "A");

// Reading scenario.
String experimentValue = trace.getAttribute("experiment");

// Delete scenario.
trace.removeAttribute("experiment");

// Read attributes.
Map<String, String> traceAttributes = trace.getAttributes();

מעקב אחר נתוני הביצועים, הצגה שלהם וסינון שלהם

מעקב אחרי מדדים ספציפיים במרכז הבקרה

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

תמונה של לוח המדדים בקטע <span class=מרכז הבקרה למעקב אחר ביצועים של Firebase" />

כדי להוסיף מדד ללוח המדדים:

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

בלוח המדדים מוצגים נתוני המדדים שנאספו לאורך זמן, גם בצורה גרפית וגם שינוי באחוזים מספרי.

מידע נוסף על השימוש במרכז השליטה.

הצגת מעקבים והנתונים שלהם

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

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

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

אפשר לגשת לדף פתרון הבעיות בדרכים הבאות:

  • במרכז הבקרה של המדד, לוחצים על הלחצן הצגת פרטי המדד.
  • בכרטיס מדד כלשהו, בוחרים באפשרות => הצגת הפרטים. בדף פתרון הבעיות מוצג מידע על המדד שבחרת.
  • בטבלת המעקב, לוחצים על שם למעקב או על ערך כלשהו של מדד בשורה שמשויכת לערך הזה. למעקב.
  • בהתראה באימייל, לוחצים על לבדיקה.

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

תמונה של <span class=נתוני מעקב אחר ביצועים ב-Firebase שמסוננים לפי מאפיין" />
  • סינון לפי גרסת האפליקציה כדי להציג נתונים לגבי גרסה קודמת או לגבי הגרסה האחרונה להפצה
  • אפשר לסנן לפי מכשיר כדי לראות איך המכשירים הישנים מטפלים באפליקציה
  • מסננים לפי מדינה כדי לוודא שמיקום מסד הנתונים לא משפיע על אזור ספציפי.

מידע נוסף על הצגת נתונים של שרטוטים

השלבים הבאים

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