Performance Monitoring utilizza le tracce per raccogliere dati sui processi monitorati nella tua app. Una traccia è un report contenente i dati acquisiti tra due punti nel tempo nella tua app.
Per tutti i tipi di app, Performance Monitoring raccoglie automaticamente una traccia per ogni rete richiesta inviata dalla tua app, denominata traccia delle richieste di rete HTTP/S. Questi Le tracce raccolgono metriche per il periodo di tempo che intercorre tra il momento in cui l'app invia una richiesta a un dell'endpoint di servizio e quando la risposta da questo endpoint è completa. Per qualsiasi endpoint a cui la tua app effettua una richiesta, Performance Monitoring acquisisce diversi metriche:
Tempo di risposta: il tempo che intercorre tra l'invio della richiesta e la ricezione completa della risposta
Dimensione payload della risposta: dimensione del byte del payload di rete scaricato dall'app
Dimensione payload richiesta: dimensione del byte del payload di rete caricati dall'app
Percentuale di successo: percentuale di risposte riuscite (codici di risposta nell'intervallo 100 - 399) rispetto alle risposte totali
Puoi visualizzare i dati di queste tracce nella scheda secondaria Richieste di rete della delle tracce, che si trova nella parte inferiore della dashboard Rendimento (scopri di più) sull'utilizzo della console più avanti in questa pagina).
Performance Monitoring Raccoglie automaticamente le metriche per le richieste di rete che utilizzano le seguenti librerie di rete:
OkHttp3, in particolare il client HTTP v3.x.x
URLConnection di Java, nello specifico HttpURLConnection e HttpsURLConnection
-
Assicurati di leggere Rimozione del client HTTP Apache e Ritiro del client HTTP Apache se usi questa libreria.
Personalizzare l'aggregazione dei dati delle richieste di rete
Oltre agli strumenti e all'aggregazione dei dati pronti all'uso per le richieste di rete, Performance Monitoring supporta anche le seguenti opzioni:
- Utilizza manualmente le tracce delle richieste di rete:il monitoraggio pronto all'uso include la maggior parte delle richieste di rete per la tua app. Tuttavia, alcune richieste potrebbero non o potresti utilizzare una libreria diversa per effettuare richieste di rete. Nel in questi casi, puoi utilizzare l'API Performance Monitoring per instrumentare manualmente tracce di richieste di rete personalizzate.
- Aggrega i dati in pattern URL personalizzati:se sono presenti URL specifici che Firebase non sta acquisendo con la corrispondenza automatica dei pattern URL derivata, possono creare pattern URL personalizzati per monitorare un insieme specifico di URL nel corso del tempo.
- Personalizza la modalità di calcolo della percentuale di successo: a volte è previsto un codice di errore. per determinati endpoint API o è già gestita nell'app. In questi casi, puoi configurare il modo in cui viene calcolata la percentuale di successo e monitorare la percentuale di successo delle chiamate di rete della tua app in modo più accurato.
Aggregazione dei dati in Pattern URL
Firebase Performance Monitoring aggrega automaticamente i dati per richieste di rete simili per aiutarti a comprendere le tendenze nel rendimento delle richieste di rete.
Per ogni richiesta, Firebase controlla se l'URL della richiesta di rete corrisponde a un URL pattern. Se l'URL della richiesta corrisponde a un pattern URL, Firebase automaticamente aggrega i dati della richiesta nel pattern URL. Firebase mostra i pattern URL e i relativi dati aggregati nella scheda Rete della dashboard Rendimento della console Firebase.
Che cos'è un pattern URL?
Un pattern URL contiene un dominio e un pattern che può corrispondere a un percorso dell'URL, ad esempio
istanza: example.com/*/animals/**
.
I pattern URL possono contenere i seguenti segmenti di percorso:
- testo normale: corrisponde a una stringa esatta
*
: corrisponde a qualsiasi stringa in un singolo segmento di percorso**
: corrisponde a un suffisso di percorso arbitrario
I pattern URL possono essere:
- Pattern derivati da Firebase, chiamati URL automatici modelli
- Pattern definiti dall'utente, chiamati URL personalizzati modelli
Ad esempio, qualsiasi delle seguenti richieste di URL potrebbe corrispondere al pattern di URLexample.com/*/animals/**
.
example.com/singapore/animals
example.com/australia/animals/spiders
example.com/australia/animals/marsupials/koala.png
Il dominio di un pattern URL può anche contenere *
come primo segmento,
ad esempio: *.example.com/*/fruits/**
.
Firebase mappa ogni richiesta a un solo pattern URL. Se hai configurato pattern URL personalizzati, Firebase tenta innanzitutto di abbinare gli URL delle richieste a questi pattern. Se Firebase non trova un URL personalizzato corrispondente pattern, associa un URL di richiesta all'URL automatico più rappresentativo Pattern URL. Scopri di più sui pattern URL automatici e personalizzati nelle sezioni seguenti.
Pattern URL automatici
Senza alcuna configurazione da parte tua, Performance Monitoring tenta di riflettere le impostazioni comportamento di utilizzo più recente abbinando le richieste della tua app all'URL automatico pattern.
Come funziona la corrispondenza automatica dei pattern URL?
Firebase abbina ogni richiesta al pattern URL automatico più rappresentativo che ha derivato dalle richieste inviate dalla tua app. Tieni presente, tuttavia, che Firebase tenta di abbinare gli URL della richiesta a qualsiasi pattern URL personalizzati.
Di seguito è riportato un esempio di base di come Firebase tenta di abbinare le richieste a il pattern URL automatico più rappresentativo della tua app.
La tua app invia molte richieste a URL come:
example.com/germany/animals/bears
example.com/germany/animals/birds
example.com/germany/cars
Firebase determina che
example.com/germany/**
è un pattern di richiesta comune per la tua app e lo aggiunge come pattern URL automatico nel progetto.Per tutte le nuove richieste corrispondenti a questo pattern URL, Firebase aggrega i dati delle richieste nel pattern URL automatico
example.com/germany/**
.Dopo una settimana, la maggior parte delle richieste della tua app è rivolta a
example.com/germany/animals/bears
eexample.com/germany/animals/birds
. Quindi, Firebase ricava una maggiore pattern URL rappresentativo diexample.com/germany/animals/**
.Per qualsiasi nuova richiesta di corrispondenza a questo nuovo pattern URL, Firebase aggrega le richieste i dati solo con il nuovo pattern URL. Firebase continua ad aggregare dati per le richieste a
example.com/germany/cars
sottoexample.com/germany/**
.Tuttavia, nelle prossime settimane le richieste della tua app a
example.com/germany/animals/bears
eexample.com/germany/animals/birds
diminuiranno notevolmente. Firebase determina cheexample.com/germany/animals/**
non è rappresentativo della versione più recente della tua app di utilizzo del servizio, quindi Firebase inizia a far corrispondere queste due richiesteexample.com/germany/**
.Firebase non aggrega ulteriori dati delle richieste in
example.com/germany/animals/**
perché non è più il massimo pattern URL automatico rappresentativi.
Poiché la corrispondenza del pattern dell'URL automatico è dinamica, tieni presente quanto segue:
Le corrispondenze e i dati aggregati delle richieste precedenti non sono interessati dalle nuove richieste Pattern URL. Firebase non aggrega nuovamente i dati delle richieste in modo retroattivo.
Solo le richieste future sono interessate dai nuovi pattern URL. Firebase mappa ogni nuova richiesta al pattern URL automatico più rappresentativo. Tieni presente che tuttavia, Firebase tenta di abbinare gli URL della richiesta a qualsiasi pattern URL personalizzati.
Visualizzare i pattern URL automatici e i relativi dati
Firebase visualizza tutti i pattern URL e i relativi dati aggregati nel Sottocartella Richieste di rete della tabella delle tracce, che si trova nella parte inferiore della Dashboard del rendimento della console Firebase.
Potresti visualizzare pattern URL con l'etichetta Senza categoria. Questi sono "generici" pattern URL automatici in base ai quali Firebase può aggregare dati per le richieste non corrispondono a pattern URL più specifici.
Quando il periodo di conservazione dei dati termina per i dati aggregati in un pattern URL, Firebase elimina questi dati dal pattern URL. Se tutti i dati vengono aggregati sotto un pattern URL automatico scade, Firebase elimina il pattern URL dalla console Firebase.
Pattern URL personalizzati
Puoi creare pattern URL personalizzati per monitorare pattern URL specifici che Firebase non sta acquisendo dati con i suoi corrispondenza automatica dei pattern URL. Ad esempio, puoi utilizzare un pattern URL personalizzato per risolvere i problemi relativi a un URL specifico o per monitorare un insieme specifico di URL nel corso del tempo.
Per ulteriori informazioni, consulta Creare pattern URL personalizzati altro ancora.
Monitorare, visualizzare e filtrare i dati sul rendimento
Per visualizzare i dati sul rendimento in tempo reale, assicurati che la tua app utilizzi un Versione dell'SDK di monitoraggio compatibile con l'elaborazione dati in tempo reale. Scopri di più sui dati sul rendimento in tempo reale.
Monitorare metriche specifiche nella dashboard
Per conoscere l'andamento delle tue metriche chiave, aggiungile alla bacheca delle metriche nella parte superiore della Dashboard sul rendimento. Puoi identificare rapidamente le regressioni monitorando le variazioni di settimana in settimana o verificare che le modifiche recenti al codice stiano migliorando il rendimento.
Dashboard di Firebase Performance Monitoring" />Per aggiungere una metrica alla scheda delle metriche, segui questi passaggi:
- Vai alla sezione Dashboard Performance nella console Firebase.
- Fai clic su una scheda di una metrica vuota, poi seleziona una metrica esistente da aggiungere alla scheda.
- Clic in una scheda delle metriche compilata per visualizzare altre opzioni, ad esempio per sostituire o rimuovere una metrica.
La scheda delle metriche mostra i dati delle metriche raccolti nel tempo, sia sotto forma di grafico che di variazione percentuale numerica.
Scopri di più sull'utilizzo della dashboard.
Visualizza le tracce e i relativi dati
Per visualizzare le tracce, vai a Dashboard Rendimento Nella console Firebase, scorri verso il basso fino alla tabella delle tracce, quindi fai clic sulla scheda secondaria appropriata. La tabella mostra alcune delle metriche principali per ogni traccia ed è anche possibile ordinare l'elenco per variazione percentuale per una metrica specifica.
Performance Monitoring fornisce una pagina di risoluzione dei problemi nella console Firebase che evidenzia la metrica che consentono di risolvere rapidamente i problemi di rendimento e di minimizzare l'impatto di app e utenti. Puoi usare la pagina di risoluzione dei problemi quando trovi potenziali problemi di prestazioni, ad esempio, nei seguenti scenari:
- Selezioni metriche pertinenti nella dashboard e noti un grande delta.
- Nella tabella delle tracce, ordina in modo da visualizzare i delta più grandi in alto e vedrai un una variazione percentuale significativa.
- Riceverai un avviso via email che ti informa di un problema di prestazioni.
Puoi accedere alla pagina di risoluzione dei problemi nei seguenti modi:
- Nella dashboard delle metriche, fai clic sul pulsante Visualizza dettagli metrica.
- In qualsiasi scheda delle metriche, seleziona
La pagina di risoluzione dei problemi mostra informazioni sulla metrica che hai selezionato. => Visualizza dettagli - Nella tabella delle tracce, fai clic sul nome di una traccia o su qualsiasi valore della metrica nella riga associata alla traccia. traccia.
- In un avviso via email, fai clic su Indaga ora.
Quando fai clic sul nome di una traccia nella tabella delle tracce, puoi visualizzare in dettaglio le metriche di
interesse. Fai clic sull'
Pulsante
- Filtra per Versione dell'app per visualizzare i dati relativi a una release precedente o all'ultima release
- Filtra per Dispositivo per scoprire in che modo i dispositivi meno recenti gestiscono la tua app
- Filtra per Paese per assicurarti che la località del database non influisca su un valore specifico regione
Scopri di più su per la visualizzazione dei dati delle immagini.
Passaggi successivi
Scopri di più sull'utilizzo degli attributi per esaminare i dati sul rendimento.
Scopri di più su come monitorare i problemi di prestazioni Console Firebase.
Configura avvisi per le richieste di rete in fase di riduzione il rendimento della tua app. Ad esempio, puoi configurare un avviso via email per il tuo team se il tempo di risposta per uno specifico pattern URL supera una soglia che hai impostato.
- Visualizza report dettagliati sulle sessioni utente in cui puoi vedere una traccia specifica nel contesto di una sequenza temporale di altre tracce raccolte durante la stessa sessione.