Monitorare l'utilizzo
Questa pagina descrive come monitorare l'utilizzo di Firestore a individuare potenziali problemi nella tua app.
Dashboard sull'utilizzo
Utilizza le dashboard sull'utilizzo nella console Google Cloud e nella Console Firebase per visualizzare le letture, le scritture ed eliminazioni dei documenti nel tempo.
Controllo degli accessi
Le dashboard sull'utilizzo richiedono l'autorizzazione IAM monitoring.timeSeries.list
.
I ruoli Proprietario progetto, Editor e Visualizzatore concedono questa autorizzazione. Puoi anche concedere questa autorizzazione
tramite un ruolo di Cloud Monitoring
o un ruolo personalizzato.
Dashboard sull'utilizzo del database
Per visualizzare le metriche di utilizzo per un database Firestore, apri la pagina Utilizzo del database nella console Google Cloud.
Nella console Google Cloud, vai alla pagina Database.
Seleziona il database richiesto dall'elenco dei database.
Nel menu di navigazione, fai clic su Utilizzo.
Fai clic sul link nel messaggio visualizzato sulla pagina per visualizzare l'utilizzo del database.
Dashboard sull'utilizzo aggregato
Se il tuo progetto ha più database Firestore, puoi visualizzare e metriche di utilizzo aggregate nella console Google Cloud o Firebase. La dashboard di utilizzo a livello di progetto combina le metriche di utilizzo di tutti i database Firestore in modalità Native. Questa dashboard non include l'utilizzo dei database Firestore in modalità Datastore.
Console Google Cloud
Nella console Google Cloud, vai alla pagina Utilizzo del progetto.
Vai all'utilizzo del progetto Google Cloud
La dashboard di utilizzo del progetto mostra le operazioni sui documenti nel tempo come segue:
Console Firebase
Dashboard di utilizzo e report sulla fatturazione
Dashboard sull'utilizzo di Firestore nelle console Firebase e Cloud fornire una stima dell'utilizzo. Possono aiutarti a identificare picchi di utilizzo. Tuttavia, la dashboard non offre una visualizzazione esatta delle operazioni fatturate. Utilizzo fatturato è probabilmente più alto. In tutti i casi di discrepanza, il report di fatturazione ha la precedenza sulla dashboard sull'utilizzo.
Operazioni che causano discrepanze tra la dashboard di utilizzo e la fatturazione di utilizzo includono:
- Operazioni di importazione ed esportazione. Letture e scritture eseguite da queste operazioni non vengono mostrati nella dashboard dell'utilizzo.
- Operazioni di scrittura solo per la verifica senza intervento. Scrive che verificano solo l'esistenza o la non esistenza di un documento e contribuiscono alle operazioni di lettura fatturate, ma vengono visualizzate rispettivamente come "UPDATE_NOOP" e "DELETE_NOOP" nella dashboard di utilizzo della scrittura.
- Operazioni di scrittura autonome. Operazioni che non comportano una modifica al database. ad esempio un aggiornamento che non modifica i valori dei campi o una scrittura su il documento potrebbe essere visualizzato nella dashboard dell'utilizzo come "UPDATE_NOOP" o "DELETE_NOOP". Anche se vengono visualizzate come "NOOP", contribuiscono comunque alle operazioni fatturate.
Scritture compresse. Nel caso in cui siano presenti più scritture sullo stesso documento in successione, la dashboard sull'utilizzo potrebbe comprimere più scritture insieme contarli come uno solo. Quando viene fatturato l'utilizzo, ogni scrittura viene comunque conteggiata separatamente.
La dashboard sull'utilizzo comprime anche le scritture per le trasformazioni dei campi, come timestamp del server, incrementi numerici e operazioni di unione degli array. Per le trasformazioni dei campi, la dashboard di utilizzo potrebbe conteggiare più operazioni come un'unica operazione.
- Query che restituiscono zero risultati. Le query senza risultati sono incluse il costo di un'operazione di lettura. Questo utilizzo viene fatturato, ma non viene visualizzato nella dashboard di utilizzo.
- Operazioni di lettura dalle voci di indice lette. Questo utilizzo viene fatturato, ma non viene visualizzato nella dashboard di utilizzo. Ad esempio, per le query di aggregazione viene letta la fatturazione relativa alle voci di indice, ma questo utilizzo non viene visualizzato nella dashboard sull'utilizzo.
La dashboard di utilizzo per le eliminazioni non acquisisce le operazioni di scadenza automatiche eseguite dai criteri di durata (TTL). Fai riferimento alle metriche TTL di Cloud Monitoring.
Utilizzo delle regole di sicurezza
Inoltre, la console Firebase fornisce una dashboard di valutazione delle regole di sicurezza, una visualizzazione rapida e utile delle invocazioni delle regole. Puoi integrare questa dashboard con un'analisi dettagliata Cloud Monitoring.
Metriche di Cloud Monitoring
Cloud Monitoring raccoglie metriche, eventi e metadati dei prodotti Google Cloud. L'utilizzo della console Firestore riporta gli stessi dati delle metriche. A configurare dashboard personalizzate e avvisi sull'utilizzo, usare Cloud Monitoring.
Cloud Monitoring include le seguenti metriche di Firestore:
Nome metrica | Descrizione |
---|---|
Operazioni di lettura documenti |
Il numero di letture dei documenti riuscite. Puoi suddividere questa metrica in base al tipo di lettura: LOOKUP o QUERY. Questa metrica non include le letture delle operazioni di esportazione gestita. |
Operazioni di scrittura documenti |
Il numero di scritture di documenti riuscite. Puoi suddividere la metrica con il tipo di scrittura: CREATE o UPDATE. Questa metrica non include le scritture dall'importazione gestita operazioni. |
Operazioni di eliminazione documenti | Il numero di eliminazioni di documenti riuscite. |
Connessioni attive |
Il numero di connessioni attive al tuo database. Ogni SDK per dispositivi mobili e web attivo mantiene una singola connessione, che può essere condivisa tra più snapshot e ascoltatori. Le librerie client del server creano una connessione per ogni listener di istantanea. |
Listener snapshot |
Il numero di listener snapshot in tutte le connessioni attive. |
Conteggio delle eliminazioni della durata (TTL) |
Conteggio totale di documenti eliminati da Criteri di durata (TTL). |
Ritardi dall'eliminazione alla scadenza del TTL |
Il tempo trascorso tra la scadenza di un documento in base a Criterio di durata (TTL) e quando è stato effettivamente eliminato. |
- Utilizzo degli aggiornamenti in tempo reale
Utilizza le metriche relative alle connessioni attive e ai listener di snapshot per misurare L'utilizzo degli aggiornamenti in tempo reale.
Supponiamo che un utente apra la tua app sul proprio smartphone. L'app si connette quindi a Firestore e si iscrive a 10 query. In questo modo, le tue metriche vengono incrementate di 1 connessione attiva e 10 listener snapshot.
- Frequenza di campionamento
Le metriche di Firestore vengono campionate ogni minuto, ma gli aggiornamenti possono la visualizzazione nelle tue dashboard può richiedere fino a 4 minuti.
Metriche di latenza
Le metriche di latenza di backend sono disponibili tramite le metriche comuni firestore di Google Cloud.
Ad esempio, un grafico della latenza p50 è disponibile nella visualizzazione Esplora metriche di Cloud Console.
Configurare una dashboard di Cloud Monitoring
Per configurare una dashboard con le metriche di Firestore, consulta Gestire la dashboard personalizzata e Aggiungere widget della dashboard.
Passaggi successivi
- Scopri di più su Cloud Monitoring.
- Scopri le best practice per il monitoraggio del rendimento di Firestore.