הוסף ניטור מותאם אישית עבור בקשות רשת ספציפיות (אפליקציות אפל ו-Android)

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

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

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

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

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

הוסף עקבות בקשות רשת מותאמות אישית

השתמש בממשק ה- API של ניטור ביצועים HttpMetric כדי להוסיף עקבות בקשות רשת מותאמות אישית כדי לנטר בקשות רשת ספציפיות.

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

Kotlin+KTX

val url = URL("https://www.google.com")
val metric = Firebase.performance.newHttpMetric(
    "https://www.google.com",
    FirebasePerformance.HttpMethod.GET,
)
metric.trace {
    val conn = url.openConnection() as HttpURLConnection
    conn.doOutput = true
    conn.setRequestProperty("Content-Type", "application/json")
    try {
        val outputStream = DataOutputStream(conn.outputStream)
        outputStream.write(data)
    } catch (ignored: IOException) {
    }

    // Set HttpMetric attributes
    setRequestPayloadSize(data.size.toLong())
    setHttpResponseCode(conn.responseCode)

    printStreamContent(conn.inputStream)

    conn.disconnect()
}

Java

HttpMetric metric =
        FirebasePerformance.getInstance().newHttpMetric("https://www.google.com",
                FirebasePerformance.HttpMethod.GET);
final URL url = new URL("https://www.google.com");
metric.start();
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoOutput(true);
conn.setRequestProperty("Content-Type", "application/json");
try {
    DataOutputStream outputStream = new DataOutputStream(conn.getOutputStream());
    outputStream.write(data);
} catch (IOException ignored) {
}
metric.setRequestPayloadSize(data.length);
metric.setHttpResponseCode(conn.getResponseCode());
printStreamContent(conn.getInputStream());

conn.disconnect();
metric.stop();

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

הצעדים הבאים

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