Performance Monitoring אוסף עקבות כדי לעזור לכם לעקוב אחרי הביצועים של האפליקציה. עקבה היא דוח של נתוני ביצועים שנאספו בין שתי נקודות זמן באפליקציה.
המעקב אחר בקשות לאחזור מהרשת שנאסף אוטומטית על ידי Performance Monitoring כולל את רוב הבקשות לאחזור מהרשת של האפליקציה. עם זאת, יכול להיות שבקשות מסוימות לא ידווחו, או שתשתמשו בספרייה אחרת כדי לשלוח בקשות לאחזור מהרשת. במקרים כאלה, אפשר להשתמש ב-Performance Monitoring API כדי להגדיר באופן ידני מעקב אחר בקשות רשת בהתאמה אישית. אפשר להשתמש בנתוני מעקב של בקשות לרשת רק באפליקציות ל-Apple ולאפליקציות ל-Android.
מדדי ברירת המחדל למעקב אחר בקשת רשת מותאמת אישית זהים למדדים של מעקב אחר בקשות רשת שנאספים באופן אוטומטי על ידי Performance Monitoring, ובאופן ספציפי: זמן התגובה, גודל מטען הייעודי (payload) של התגובה והבקשה ושיעור ההצלחה. אי אפשר להוסיף מדדים בהתאמה אישית למעקב אחרי בקשות רשת בהתאמה אישית.
בתוך הקוד, מגדירים את ההתחלה והסוף של מעקב אחר בקשת רשת בהתאמה אישית באמצעות ממשקי ה-API שזמינים ב-Performance Monitoring SDK.
עקבות של בקשות לאחזור מהרשת מותאמות אישית מופיעות במסוף Firebase לצד הבקשות לאחזור מהרשת ש-Performance Monitoring מתעד באופן אוטומטי (בכרטיסיית המשנה בקשות לאחזור מהרשת בטבלת העקבות).
הוספה של עקבות מותאמות אישית של בקשות לאחזור מהרשת
אפשר להשתמש ב-Performance Monitoring HttpMetric API כדי להוסיף מעקבים מותאמים אישית של בקשות רשת, ולעקוב אחרי בקשות רשת ספציפיות.
כדי להטמיע באופן ידני בקשות מותאמות אישית לרשת ב-Performance Monitoring, מוסיפים קוד שדומה לקוד הבא:
Kotlin
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();
מעקבים אחרי בקשות לאחזור מהרשת מותאמות אישית תומכים גם בהוספת מאפיינים מותאמים אישית, אבל לא מדדים מותאמים אישית.
השלבים הבאים
- הגדרת התראות לבקשות רשת שפוגעות בביצועים של האפליקציה. לדוגמה, אפשר להגדיר התראה באימייל לצוות אם זמן התגובה לתבנית ספציפית של כתובת URL חורג מסף שהגדרתם.