Informazioni sui dati relativi alle prestazioni delle richieste di rete HTTP/S (qualsiasi app)


Performance Monitoring utilizza le tracce per raccogliere dati sui processi monitorati nella tua app. Una traccia è un report che contiene i dati acquisiti tra due punti nel tempo nella tua app.

Per tutti i tipi di app, Performance Monitoring automaticamente raccoglie una traccia per ogni richiesta di rete emessa dalla tua app, chiamata traccia della richiesta di rete HTTP/S. Queste tracce raccolgono metriche per il tempo che intercorre tra il momento in cui la tua app invia una richiesta a un endpoint di servizio e il momento in cui la risposta da quell'endpoint è completa. Per qualsiasi endpoint a cui la tua app invia una richiesta, Performance Monitoring acquisisce diverse metriche:

  • Tempo di risposta: tempo che intercorre tra l'invio della richiesta e la ricezione completa della risposta

  • Dimensioni payload risposta: dimensioni in byte del payload di rete scaricato dall'app

  • Dimensioni payload richiesta: dimensioni in byte del payload di rete caricato dall'app

  • Percentuale di successo: percentuale di risposte riuscite (codici di risposta nell'intervallo 100-399) rispetto al totale delle risposte

Puoi visualizzare i dati di queste tracce nella sottoscheda Richieste di rete della tabella delle tracce, che si trova nella parte inferiore della dashboard Rendimento (scopri di più su come utilizzare la console più avanti in questa pagina).

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:

  • Strumentare manualmente le tracce delle richieste di rete: il monitoraggio predefinito include la maggior parte delle richieste di rete per la tua app. Tuttavia, alcune richieste potrebbero non essere segnalate o potresti utilizzare una libreria diversa per effettuare richieste di rete. In questi casi, puoi utilizzare l'API Performance Monitoring per strumentare manualmente le tracce delle richieste di rete personalizzate.
  • Aggregare i dati in base a pattern URL personalizzati: se esistono URL specifici che Firebase non acquisisce con la corrispondenza automatica dei pattern URL derivati, puoi creare pattern URL personalizzati per monitorare un insieme specifico di URL nel tempo.
  • Personalizzare il calcolo della percentuale di successo: a volte è previsto un codice di errore per determinati endpoint API o è già gestito nella tua app. In questi casi, puoi configurare il calcolo della percentuale di successo e monitorare la percentuale di successo delle chiamate di rete della tua app in modo più accurato.

Aggregazione dei dati in base ai pattern URL

Firebase Performance Monitoring aggrega automaticamente i dati per le richieste di rete simili per aiutarti a comprendere le tendenze nel rendimento delle richieste di rete.

Per ogni richiesta, Firebase verifica se l'URL della richiesta di rete corrisponde a un pattern URL. Se l'URL della richiesta corrisponde a un pattern URL, Firebase aggrega automaticamente i dati della richiesta in base al 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 più un pattern che può corrispondere a un percorso dell'URL, ad esempio: 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:

Ad esempio, una delle seguenti richieste URL potrebbe corrispondere al pattern URL example.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 qualsiasi pattern URL personalizzato, Firebase tenta di far corrispondere prima gli URL delle richieste a questi pattern. Se Firebase non trova un pattern URL personalizzato corrispondente, fa corrispondere un URL della richiesta al pattern URL automatico più rappresentativo. 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 il comportamento di utilizzo più recente della tua app facendo corrispondere le richieste dell'app a pattern URL automatici.

Come funziona la corrispondenza automatica dei pattern URL?

Firebase fa corrispondere ogni richiesta al pattern URL automatico più rappresentativo che ha derivato dalle richieste inviate dalla tua app. Tieni presente, tuttavia, che Firebase tenta di far corrispondere prima gli URL delle richieste a eventuali pattern URL personalizzati configurati.

Di seguito è riportato un esempio di base di come Firebase tenta di far corrispondere le richieste al pattern URL automatico più rappresentativo per la tua app.

  1. 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 tuo progetto.

    Per tutte le nuove richieste corrispondenti a questo pattern URL, Firebase aggrega i dati delle richieste in base al pattern URL automatico example.com/germany/**.

  2. Dopo una settimana, la maggior parte delle richieste della tua app riguarda example.com/germany/animals/bears e example.com/germany/animals/birds. Pertanto, Firebase deriva un pattern URL più rappresentativo di example.com/germany/animals/**.

    Per tutte le nuove richieste corrispondenti a questo nuovo pattern URL, Firebase aggrega i dati delle richieste solo in base al nuovo pattern URL. Firebase continua ad aggregare i dati per le richieste a example.com/germany/cars in base a example.com/germany/**.

  3. Tuttavia, nelle settimane successive, le richieste della tua app a example.com/germany/animals/bears e example.com/germany/animals/birds diminuiscono notevolmente. Firebase determina che example.com/germany/animals/** non è rappresentativo del comportamento di utilizzo più recente della tua app, quindi inizia a far corrispondere queste due richieste a example.com/germany/**.

    Firebase non aggrega altri dati delle richieste in base a example.com/germany/animals/** perché non è più il pattern URL automatico più rappresentativo.

Poiché la corrispondenza automatica dei pattern URL è dinamica, tieni presente quanto segue:

  • Le corrispondenze e i dati aggregati delle richieste precedenti non sono interessati dai nuovi pattern URL. Firebase non riaggrega retroattivamente i dati delle richieste.

  • Solo le richieste future sono interessate dai nuovi pattern URL. Firebase mappa ogni nuova richiesta al pattern URL automatico più rappresentativo. Tieni presente, tuttavia, che Firebase tenta di far corrispondere prima gli URL delle richieste a eventuali pattern URL personalizzati configurati.

Visualizzare i pattern URL automatici e i relativi dati

Firebase mostra tutti i pattern URL e i relativi dati aggregati nella Richieste di rete sottoscheda della tabella delle tracce, che si trova nella parte inferiore della Rendimento dashboard della console Firebase.

Potresti visualizzare pattern URL con l'etichetta Non classificato. Si tratta di pattern URL automatici "generici" in base ai quali Firebase può aggregare i dati per le richieste che non corrispondono a nessun pattern URL più specifico.

Al termine del periodo di conservazione dei dati aggregati in base a un pattern URL, Firebase elimina questi dati dal pattern URL. Se tutti i dati aggregati in base a un pattern URL automatico scadono, Firebase elimina il pattern URL dalla Firebase console.

Pattern URL personalizzati

Puoi creare pattern URL personalizzati per monitorare pattern URL specifici che Firebase non acquisisce con la corrispondenza automatica dei pattern URL derivati. 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 tempo.

Visita la pagina Creare pattern URL personalizzati per saperne di più.

Monitorare, visualizzare e filtrare i dati sul rendimento

Per visualizzare i dati sul rendimento in tempo reale, assicurati che la tua app utilizzi una versione dell'SDK Performance Monitoring compatibile con l'elaborazione dei dati in tempo reale. Scopri di più sui dati sul rendimento in tempo reale.

Monitorare metriche specifiche nella dashboard

Per scoprire l'andamento delle metriche chiave, aggiungile alla scheda delle metriche nella parte superiore della dashboard 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.

un&#39;immagine della bacheca delle metriche nella <span class=Dashboard di Firebase Performance Monitoring" />

Per aggiungere una metrica alla scheda delle metriche:

  1. Vai alla dashboard Rendimentonella console Firebase.
  2. Fai clic su una scheda delle metriche vuota, quindi seleziona una metrica esistente da aggiungere alla scheda.
  3. Fai clic su 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 in forma grafica sia come a variazione percentuale numerica.

Scopri di più su come utilizzare la dashboard.

Visualizzare le tracce e i relativi dati

Per visualizzare le tracce, vai alla dashboard Rendimento nella console Firebase, scorri verso il basso fino alla tabella delle tracce, quindi fai clic sulla sottoscheda appropriata. La tabella mostra alcune delle metriche principali per ogni traccia e puoi persino ordinare l'elenco in base alla variazione percentuale di una metrica specifica.

Performance Monitoring fornisce una pagina per la risoluzione dei problemi nella console Firebase che evidenzia le variazioni delle metriche, semplificando la risoluzione rapida e la riduzione al minimo dell'impatto dei problemi di prestazioni sulle app e sugli utenti. Puoi utilizzare la pagina per la risoluzione dei problemi quando scopri potenziali problemi di rendimento, ad esempio nei seguenti scenari:

  • Selezioni le metriche pertinenti nella dashboard e noti una grande differenza.
  • Nella tabella delle tracce ordini i dati in modo da visualizzare le differenze maggiori in alto e noti una variazione percentuale significativa.
  • Ricevi un avviso via email che ti informa di un problema di prestazioni.

Puoi accedere alla pagina per la risoluzione dei problemi nei seguenti modi:

  • Nella dashboard delle metriche, fai clic sul pulsante Visualizza dettagli metrica.
  • In qualsiasi scheda delle metriche, seleziona => Visualizza dettagli. La pagina per la risoluzione dei problemi mostra informazioni sulla metrica selezionata.
  • Nella tabella delle tracce, fai clic sul nome di una traccia o su qualsiasi valore della metrica nella riga associata a quella 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 sul pulsante Filtro per filtrare i dati in base all'attributo, ad esempio:

un&#39;immagine di <span class=Dati di Firebase Performance Monitoring filtrati per attributo" />
  • Filtra per Versione app per visualizzare i dati di una release precedente o della release più recente
  • Filtra per Dispositivo per scoprire in che modo i dispositivi meno recenti gestiscono la tua app
  • Filtra per Paese per assicurarti che la posizione del database non influisca su una regione specifica

Scopri di più sulla visualizzazione dei dati delle tracce.

Passaggi successivi

  • Scopri di più sull' utilizzo degli attributi per esaminare i dati sul rendimento.

  • Scopri di più su come monitorare i problemi di rendimento nella Firebase console.

  • Configura gli avvisi per le richieste di rete che stanno peggiorando il rendimento della tua app. Ad esempio, puoi configurare un avviso via email per il tuo team se il tempo di risposta per un pattern URL specifico supera una soglia che hai impostato.

  • Visualizza report dettagliati delle sessioni utente in cui puoi vedere una traccia specifica in un contesto di sequenza temporale di altre tracce raccolte durante la stessa sessione.