Performance Monitoring menggunakan trace untuk mengumpulkan data tentang proses yang dipantau di aplikasi Anda. Trace adalah laporan berisi data yang dicatat di antara dua titik waktu dalam aplikasi Anda.
Untuk semua jenis aplikasi, Performance Monitoring otomatis mengumpulkan trace untuk setiap permintaan jaringan yang dikirimkan oleh aplikasi Anda, yang disebut trace permintaan jaringan HTTP/S. Trace ini mengumpulkan metrik sejak aplikasi mengirimkan permintaan ke endpoint layanan hingga respons dari endpoint diterima secara lengkap. Untuk setiap endpoint yang dikirimi permintaan oleh aplikasi, Performance Monitoring akan mencatat sejumlah metrik:
Waktu respons — Waktu sejak permintaan dibuat hingga respons diterima secara lengkap
Ukuran payload respons — Ukuran byte payload jaringan yang didownload oleh aplikasi
Ukuran payload permintaan — Ukuran byte payload jaringan yang diupload oleh aplikasi
Tingkat keberhasilan — Persentase respons yang berhasil (kode respons dalam rentang 100-399) dibandingkan dengan total respons
Anda dapat melihat data dari trace ini di subtab Network requests pada tabel trace, yang ada di bagian bawah dasbor Performance (pelajari lebih lanjut cara menggunakan console nanti di halaman ini).
Performance Monitoring otomatis mengumpulkan metrik untuk permintaan jaringan yang menggunakan library jaringan berikut:
OkHttp3, khususnya klien HTTP v3.x.x
URLConnection Java, khususnya HttpURLConnection dan HttpsURLConnection
-
Jika menggunakan library ini, baca artikel tentang penghapusan Apache HTTP Client dan penghentian Apache HTTP Client.
Menyesuaikan agregasi data permintaan jaringan
Selain agregasi data dan alat siap pakai untuk permintaan jaringan, Performance Monitoring juga mendukung opsi berikut:
- Menginstrumentasikan trace permintaan jaringan secara manual: Pemantauan siap pakai mencakup sebagian besar permintaan jaringan untuk aplikasi Anda. Namun, sejumlah permintaan mungkin tidak akan dilaporkan atau Anda mungkin menggunakan library lain untuk mengajukan permintaan jaringan. Dalam hal ini, Anda dapat menggunakan Performance Monitoring API untuk menginstrumentasikan trace permintaan jaringan kustom secara manual.
- Menggabungkan data berdasarkan pola URL kustom: Jika ada URL tertentu yang tidak diambil oleh Firebase menggunakan pencocokan pola URL otomatis miliknya, Anda dapat membuat pola URL kustom untuk memantau serangkaian URL tertentu dari waktu ke waktu.
- Menyesuaikan cara penghitungan tingkat keberhasilan: Terkadang kode error diharapkan untuk endpoint API tertentu atau sudah ditangani di aplikasi Anda. Dalam hal ini, Anda dapat mengonfigurasi cara penghitungan tingkat keberhasilan dan memantau tingkat keberhasilan panggilan jaringan aplikasi Anda secara lebih akurat.
Agregasi data berdasarkan pola URL
Firebase Performance Monitoring otomatis menggabungkan data untuk permintaan jaringan yang mirip guna membantu Anda memahami tren dalam performa permintaan jaringan.
Untuk setiap permintaan, Firebase akan memeriksa kecocokan URL permintaan jaringan dengan pola URL. Jika URL permintaan cocok dengan pola URL, Firebase akan otomatis menggabungkan data permintaan berdasarkan pola URL tersebut. Firebase menampilkan pola URL dan data gabungannya di tab Network di dasbor Performance pada Firebase console.
Apa itu pola URL?
Pola URL berisi domain dan pola yang dapat dicocokkan dengan jalur URL, misalnya: example.com/*/animals/**
.
Pola URL dapat berisi segmen jalur berikut:
- teks biasa — cocok dengan string yang sama persis
*
— cocok dengan semua string di satu segmen jalur**
— cocok dengan akhiran jalur sembarang
Pola URL dapat berupa:
- Pola dari Firebase — disebut pola URL otomatis
- Pola yang ditentukan pengguna — disebut pola URL kustom
Contoh: Semua permintaan URL berikut ini dapat cocok dengan pola URL
example.com/*/animals/**
.
example.com/singapore/animals
example.com/australia/animals/spiders
example.com/australia/animals/marsupials/koala.png
Domain untuk pola URL juga dapat berisi *
sebagai segmen pertamanya,
misalnya: *.example.com/*/fruits/**
.
Firebase memetakan setiap permintaan ke hanya satu pola URL. Jika Anda telah mengonfigurasi pola URL kustom apa pun, Firebase akan mencoba mencocokkan URL permintaan dengan pola tersebut terlebih dahulu. Jika tidak berhasil menemukan pola URL kustom yang cocok, Firebase akan mencocokkan URL permintaan dengan pola URL otomatis yang paling mewakili. Pelajari selengkapnya pola URL otomatis dan kustom di bagian-bagian berikut.
Pola URL otomatis
Tanpa Anda konfigurasi, Performance Monitoring akan mencoba menggambarkan perilakup enggunaan terbaru aplikasi dengan mencocokkan permintaan aplikasi dengan pola URL otomatis.
Bagaimana cara kerja pencocokan pola URL otomatis?
Firebase mencocokkan setiap permintaan dengan pola URL otomatis yang paling mewakili yang diperoleh dari permintaan oleh aplikasi. Perhatikan bahwa Firebase akan mula-mula mencoba mencocokkan URL permintaan dengan semua pola URL kustom yang telah dikonfigurasi.
Berikut adalah contoh dasar tentang cara Firebase mencoba mencocokkan permintaan dengan pola URL otomatis yang paling mewakili untuk aplikasi Anda.
Aplikasi Anda mengirim banyak permintaan ke URL seperti:
example.com/germany/animals/bears
example.com/germany/animals/birds
example.com/germany/cars
Firebase menilai bahwa
example.com/germany/**
merupakan pola permintaan yang umum untuk aplikasi Anda dan menambahkannya sebagai pola URL otomatis ke project Anda.Untuk semua permintaan pencocokan baru ke pola URL ini, Firebase akan menggabungkan data permintaan berdasarkan pola URL otomatis
example.com/germany/**
.Setelah satu minggu, sebagian besar permintaan aplikasi Anda ditujukan ke
example.com/germany/animals/bears
danexample.com/germany/animals/birds
. Hasilnya, Firebase memperoleh pola URL yang lebih umum, yakniexample.com/germany/animals/**
.Untuk semua permintaan pencocokan baru ke pola URL ini, Firebase akan menggabungkan data permintaan hanya berdasarkan pola URL yang baru. Firebase terus menggabungkan data untuk permintaan ke
example.com/germany/cars
berdasarkanexample.com/germany/**
.Namun, selama beberapa minggu ke depan, permintaan aplikasi Anda ke
example.com/germany/animals/bears
danexample.com/germany/animals/birds
akan berkurang banyak. Firebase menilai bahwaexample.com/germany/animals/**
bukan lagi yang paling umum dalam perilaku penggunaan terbaru aplikasi, sehingga Firebase mulai mencocokkan kedua permintaan ini kembali keexample.com/germany/**
.Firebase tidak menggabungkan data permintaan apa pun lebih lanjut berdasarkan
example.com/germany/animals/**
karena data permintaan tersebut bukan lagi pola URL otomatis yang paling mewakili.
Berhubung pencocokan pola URL otomatis bersifat dinamis, perhatikan hal-hal berikut:
Kecocokan dan data gabungan dari permintaan sebelumnya tidak dipengaruhi oleh pola URL yang baru. Firebase tidak menggabungkan ulang data permintaan yang sudah lampau.
Pola URL yang baru hanya akan memengaruhi permintaan yang akan datang. Firebase memetakan setiap permintaan baru ke pola URL otomatis yang paling mewakili. Perhatikan bahwa Firebase akan mula-mula mencoba mencocokkan URL permintaan dengan pola URL kustom yang dikonfigurasi.
Melihat pola URL otomatis dan datanya
Firebase menampilkan semua pola URL dan data gabungannya di subtab Network requests pada tabel trace, yang ada di bagian bawah dasbor Performance pada Firebase console.
Pola URL dengan label Uncategorized mungkin akan muncul. Ini adalah pola URL otomatis yang "luas" seandainya Firebase dapat menghimpun data untuk permintaan yang sudah tidak lagi cocok dengan pola URL tertentu.
Saat periode retensi data berakhir untuk data yang digabungkan berdasarkan pola URL, Firebase akan menghapus data tersebut dari pola URL tersebut. Jika masa berlaku semua data yang digabungkan berdasarkan suatu pola URL otomatis sudah habis, Firebase akan menghapus pola URL tersebut dari Firebase console.
Pola URL kustom
Anda dapat membuat pola URL kustom untuk memantau pola URL tertentu yang tidak diambil oleh Firebase menggunakan pencocokan pola URL otomatis miliknya. Sebagai contoh, Anda dapat menggunakan pola URL kustom untuk memecahkan masalah URL tertentu atau untuk memantau serangkaian URL tertentu dari waktu ke waktu.
Buka bagian Membuat pola URL kustom untuk mempelajari lebih lanjut.
Melacak, melihat, dan memfilter data performa
Untuk melihat data performa real time, pastikan aplikasi Anda menggunakan versi Performance Monitoring SDK yang kompatibel dengan pemrosesan data real time. Pelajari data performa real-time lebih lanjut.
Melacak metrik tertentu di dasbor Anda
Untuk mempelajari tren metrik utama, tambahkan metrik tersebut ke bagan metrik di bagian atas dasbor Performance. Anda dapat segera mengidentifikasi regresi dengan melihat perubahan dari minggu ke minggu atau memverifikasi bahwa perubahan terbaru pada kode Anda meningkatkan performa.
Dasbor Firebase Performance Monitoring" />Untuk menambahkan metrik ke bagan metrik, ikuti langkah-langkah berikut:
- Buka dasbor Performancedi Firebase console.
- Klik kartu metrik kosong, lalu pilih metrik yang ada untuk ditambahkan ke bagan.
- Klik di kartu metrik yang terisi untuk melihat opsi lainnya, misalnya untuk mengganti atau menghapus metrik.
Bagan metrik menampilkan data metrik yang dikumpulkan dari waktu ke waktu, baik dalam bentuk grafis maupun sebagai perubahan persentase numerik.
Pelajari lebih lanjut cara menggunakan dasbor.
Melihat trace dan datanya
Untuk melihat trace, buka dasbor Performance di Firebase console, scroll ke bawah ke tabel trace, lalu klik subtab yang sesuai. Tabel ini menampilkan beberapa metrik teratas untuk setiap trace, dan Anda bahkan dapat mengurutkan daftar berdasarkan perubahan persentase untuk metrik tertentu.
Performance Monitoring menyediakan halaman pemecahan masalah di Firebase console yang menyoroti perubahan metrik, sehingga memudahkan Anda untuk mengatasi dan meminimalkan dampak masalah performa pada aplikasi serta pengguna dengan cepat. Anda dapat menggunakan halaman pemecahan masalah saat mempelajari potensi masalah performa, misalnya dalam skenario berikut:
- Anda memilih metrik yang relevan di dasbor dan melihat delta yang besar.
- Dalam tabel trace, Anda mengurutkan untuk menampilkan delta terbesar di bagian atas, dan Anda melihat perubahan persentase yang signifikan.
- Anda akan menerima peringatan email yang memberitahukan masalah performa.
Anda dapat mengakses halaman pemecahan masalah dengan cara berikut:
- Pada dasbor metrik, klik tombol View metric details.
- Di kartu metrik mana pun, pilih
. Halaman pemecahan masalah akan menampilkan informasi tentang metrik yang Anda pilih. => View details - Pada tabel trace, klik nama trace atau nilai metrik apa pun di baris yang terkait dengan trace tersebut.
- Di peringatan email, klik Investigate now.
Saat mengklik nama trace di tabel trace, Anda dapat melihat perincian metrik yang diinginkan. Klik tombol
- Filter menurut App version untuk melihat data tentang rilis sebelumnya atau rilis terbaru
- Filter menurut Device untuk mempelajari cara perangkat lama menangani aplikasi Anda
- Filter menurut Country untuk memastikan lokasi database Anda tidak memengaruhi region tertentu
Pelajari cara melihat data untuk trace Anda lebih lanjut.
Langkah Berikutnya
Pelajari lebih lanjut cara menggunakan atribut untuk memeriksa data performa.
Pelajari cara melacak masalah performa lebih lanjut di Firebase console.
Siapkan pemberitahuan untuk permintaan jaringan yang menurunkan performa aplikasi Anda. Misalnya, Anda dapat mengonfigurasi peringatan email untuk tim jika waktu respons untuk pola URL tertentu melebihi batas yang Anda tetapkan.
- Lihat laporan terperinci tentang sesi pengguna untuk melihat trace tertentu dalam konteks linimasa trace lain yang dikumpulkan selama sesi yang sama.