Performans İzleme, uygulamanızın performansını izlemenize yardımcı olmak için izleri toplar. İzleme, uygulamanızda zaman içinde iki nokta arasında yakalanan performans verilerinin bir raporudur.
Performans İzleme tarafından otomatik olarak toplanan ağ isteği izleri , uygulamanız için çoğu ağ isteğini içerir. Ancak bazı istekler raporlanmayabilir veya ağ istekleri yapmak için farklı bir kitaplık kullanabilirsiniz. Bu durumlarda, özel ağ isteği izlemelerini manuel olarak denetlemek için Performans İzleme API'sini kullanabilirsiniz. Özel ağ isteği izlemeleri yalnızca Apple ve Android uygulamaları için desteklenir.
Özel bir ağ isteği izlemesi için varsayılan metrikler, özellikle yanıt süresi, yanıt ve istek yükü boyutu ve başarı oranı olmak üzere Performans İzleme tarafından otomatik olarak toplanan ağ isteği izlemeleriyle aynıdır. Özel ağ isteği izlemeleri, özel metriklerin eklenmesini desteklemez.
Kodunuzda, Performance Monitoring SDK tarafından sağlanan API'leri kullanarak özel bir ağ isteği izlemesinin başlangıcını ve sonunu tanımlarsınız.
Özel ağ isteği izleri, Performans İzleme'nin otomatik olarak yakaladığı ağ isteklerinin yanı sıra Firebase konsolunda görünür (izler tablosunun Ağ istekleri alt sekmesinde).
Özel ağ isteği izleri ekleyin
Belirli ağ isteklerini izlemek üzere özel ağ isteği izleri eklemek için Performans İzleme HttpMetric API'sini kullanın.
Performans İzleme'de özel ağ isteklerini manuel olarak enstrümantal etmek için aşağıdakine benzer bir kod ekleyin:
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();
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() }
Özel ağ isteği izlemeleri, özel öznitelikler eklemeyi de destekler, ancak özel metrikleri desteklemez.
Sonraki adımlar
- Uygulamanızın performansını düşüren ağ istekleri için uyarılar ayarlayın . Örneğin, belirli bir URL modelinin yanıt süresi belirlediğiniz eşiği aşarsa ekibiniz için bir e-posta uyarısı yapılandırabilirsiniz.