Il monitoraggio del rendimento raccoglie tracce per aiutarti a monitorare il rendimento della tua app. Una traccia è un report dei dati sul rendimento acquisiti tra due istanti nella tua app.
Puoi creare le tue tracce per monitorare i dati sul rendimento associati a codice specifico nella tua app. Con una traccia di codice personalizzata, puoi misurare il tempo necessario alla tua app per completare un'attività specifica o un insieme di attività, ad esempio il caricamento di un insieme di immagini o l'esecuzione di query sul database.
La metrica predefinita per una traccia di codice personalizzata è la "durata" (il tempo tra i punti di inizio e di arresto della traccia), ma puoi anche aggiungere metriche personalizzate.
Nel codice, definisci l'inizio e la fine di una traccia di codice personalizzata utilizzando le API fornite dall'SDK di monitoraggio del rendimento.
Le tracce di codice personalizzate possono essere avviate in qualsiasi momento dopo la loro creazione e sono sicure per i thread.
Poiché la metrica predefinita raccolta per queste tracce è "duration", a volte vengono chiamate "tracce Duration".
Puoi visualizzare i dati di queste tracce nella sottoscheda Tracce personalizzate della tabella delle tracce, che si trova nella parte inferiore della dashboard Rendimento (scopri di più sull'utilizzo della console più avanti in questa pagina).
Attributi predefiniti, attributi personalizzati e metriche personalizzate
Per le tracce di codice personalizzate, Performance Monitoring registra automaticamente gli attributi predefiniti (metadati comuni come versione dell'app, paese, dispositivo e così via) in modo da poter filtrare i dati relativi alla traccia nella Console Firebase. Puoi anche aggiungere e monitorare attributi personalizzati (ad esempio, il livello del gioco o le proprietà utente).
Puoi configurare ulteriormente una traccia di codice personalizzata per registrare metriche personalizzate per gli eventi correlati al rendimento che si verificano nell'ambito della traccia. Ad esempio, puoi creare una metrica personalizzata per il numero di hit e mancate hit della cache o per il numero di volte in cui l'interfaccia utente diventa non rispondente per un periodo di tempo significativo.
Gli attributi e le metriche personalizzate vengono visualizzati nella Console Firebase insieme agli attributi e alla metrica predefiniti per la traccia.
Aggiungere tracce di codice personalizzate
Utilizza l'API Trace per il monitoraggio delle prestazioni per aggiungere tracce di codice personalizzate al fine di monitorare il codice dell'applicazione specifico.
Tieni presente quanto segue:
- Un'app può avere più tracce di codice personalizzate.
- È possibile eseguire più tracce di codice personalizzate contemporaneamente.
- I nomi delle tracce di codice personalizzate devono soddisfare i seguenti requisiti:
nessun carattere iniziale o finale di spazio vuoto, nessun carattere iniziale di trattino basso (
_
) e la lunghezza massima è di 100 caratteri. - Le tracce di codice personalizzate supportano l'aggiunta di metriche personalizzate e attributi personalizzati.
Per avviare e interrompere una traccia di codice personalizzata, racchiudi il codice da tracciare con codice simile al seguente:
Trace customTrace = FirebasePerformance.instance.newTrace('custom-trace');
await customTrace.start();
// Code you want to trace
await customTrace.stop();
Aggiungere metriche personalizzate alle tracce di codice personalizzato
Utilizza l'API Trace per il monitoraggio delle prestazioni per aggiungere metriche personalizzate alle tracce di codice personalizzate.
Tieni presente quanto segue:
- I nomi delle metriche personalizzate devono soddisfare i seguenti requisiti:
nessun carattere iniziale o finale di spazio vuoto, nessun carattere iniziale di trattino basso (
_
) e una lunghezza massima di 100 caratteri. - Ogni traccia di codice personalizzata può registrare fino a 32 metriche (inclusa la metrica predefinita Durata).
Per aggiungere una metrica personalizzata, aggiungi una riga di codice simile alla seguente ogni volta che si verifica l'evento. Ad esempio, questa metrica personalizzata conteggia gli eventi correlati al rendimento che si verificano nella tua app, come gli hit della cache o i tentativi di nuovo caricamento.
Trace customTrace = FirebasePerformance.instance.newTrace("custom-trace");
await customTrace.start();
// Code you want to trace
customTrace.incrementMetric("metric-name", 1);
// More code
await customTrace.stop();
Creare attributi personalizzati per le tracce di codice personalizzate
Per utilizzare gli attributi personalizzati, aggiungi alla tua app del codice che definisce l'attributo e lo associa a una traccia di codice personalizzata specifica. Puoi impostare l'attributo personalizzato in qualsiasi momento tra l'inizio e la fine della traccia.
Tieni presente quanto segue:
I nomi degli attributi personalizzati devono soddisfare i seguenti requisiti: nessun carattere iniziale o finale di spazio vuoto, nessun carattere iniziale di trattino basso (
_
) e la lunghezza massima è di 32 caratteri.Ogni traccia di codice personalizzato può registrare fino a 5 attributi personalizzati.
Non devi utilizzare attributi personalizzati che contengono informazioni che consentono l'identificazione personale di un individuo per Google.
Trace trace = FirebasePerformance.instance.newTrace("test_trace");
// Update scenario.
trace.putAttribute("experiment", "A");
// Reading scenario.
String? experimentValue = trace.getAttribute("experiment");
// Delete scenario.
trace.removeAttribute("experiment");
// Read attributes.
Map<String, String> traceAttributes = trace.getAttributes();
Monitorare, visualizzare e filtrare i dati sul rendimento
Monitorare metriche specifiche nella dashboard
Per scoprire le tendenze delle tue metriche principali, 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.
Per aggiungere una metrica alla bacheca delle metriche, vai alla dashboard Rendimento nella console Firebase e poi fai clic sulla scheda Dashboard. Fai clic su una scheda metrica vuota, quindi seleziona una metrica esistente da aggiungere alla scheda. Fai clic sui tre puntini verticali (⋮) in una scheda delle metriche completa 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 variazione percentuale numerica.
Scopri di più sull'utilizzo della 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 e fai clic sulla scheda secondaria appropriata. La tabella mostra alcune metriche principali per ogni traccia e puoi anche ordinare l'elenco in base alla variazione percentuale di una metrica specifica.
Se fai clic sul nome di una traccia nella tabella delle tracce, puoi visualizzare varie schermate per esplorare la traccia e visualizzare in dettaglio le metriche di tuo interesse. Nella maggior parte delle pagine, puoi utilizzare il pulsante Filtra (in alto a sinistra nella schermata) per filtrare i dati in base all'attributo, ad esempio:
- Filtra per Versione app per visualizzare i dati relativi a una release passata o alla 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 per le 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 prestazioni nella console Firebase.
Configura avvisi per le modifiche al codice che stanno peggiorando il rendimento della tua app. Ad esempio, puoi configurare un avviso via email per il tuo team se la durata di una traccia di codice personalizzato specifica supera una soglia impostata.