Monitora l'utilizzo
Questa pagina descrive come monitorare l'utilizzo di Firestore e 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 e le eliminazioni dei documenti nel tempo.
Controllo dell'accesso
Le dashboard sull'utilizzo richiedono l'autorizzazione IAM monitoring.timeSeries.list
.
I ruoli Proprietario, Editor e Visualizzatore del progetto concedono questa autorizzazione. Puoi anche concedere questa autorizzazione tramite un ruolo di Cloud Monitoring o un ruolo personalizzato.
Dashboard utilizzo 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 metriche di utilizzo aggregate nella console Google Cloud o nella console Firebase. La dashboard sull'utilizzo a livello di progetto combina le metriche di utilizzo di tutti i database di Firestore in modalità Native. Questa dashboard non include l'utilizzo da parte di Firestore nei database 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
Vai alla pagina sull'utilizzo di Firestore (console Firebase)
Dashboard sull'utilizzo e report sulla fatturazione
Le dashboard sull'utilizzo di Firestore nelle console Firebase e Cloud forniscono una stima dell'utilizzo. Possono aiutarti a identificare picchi di utilizzo. Tuttavia, la dashboard non offre una visualizzazione esatta delle operazioni fatturate. L'utilizzo fatturato è probabilmente più elevato. In tutti i casi di discrepanza, il report di fatturazione ha la precedenza sulla dashboard sull'utilizzo.
Le operazioni che causano discrepanze tra la dashboard di utilizzo e l'utilizzo fatturato includono:
- Operazioni di importazione ed esportazione. Le letture e le scritture eseguite da queste operazioni non vengono visualizzate nella dashboard sull'utilizzo.
- Operazioni di scrittura autonome e di sola verifica. Le scritture che verificano solo l'esistenza o la non esistenza di un documento 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. Le operazioni che non comportano una modifica al database, ad esempio un aggiornamento che non modifica i valori dei campi o la scrittura in un documento eliminato, possono essere visualizzate nella dashboard di utilizzo come "UPDATE_NOOP" o "DELETE_NOOP". Anche se vengono indicate come "NOOP", contribuiscono comunque alle operazioni fatturate.
Operazioni di scrittura compresse. Nel caso in cui vengano eseguite più operazioni di scrittura sullo stesso documento in successione, la dashboard sull'utilizzo potrebbe comprimere più scritture e conteggiarle come una sola. Durante l'utilizzo della fatturazione, ogni scrittura viene comunque conteggiata separatamente.
La dashboard sull'utilizzo comprime anche le scritture per le trasformazioni dei campi come i timestamp del server, gli incrementi numerici e le operazioni di unione degli array. Per le trasformazioni dei campi, la dashboard di utilizzo potrebbe conteggiare più operazioni come una singola operazione.
- Query che non restituiscono risultati. Le query senza risultati comportano il costo di un'operazione di lettura. Questo utilizzo viene fatturato, ma non è visualizzato nella dashboard di utilizzo.
- Operazioni di lettura associate a query di aggregazione come COUNT. Questo utilizzo viene fatturato, ma non è visualizzato nella dashboard di utilizzo.
La dashboard dell'utilizzo per le eliminazioni non acquisisce le operazioni di scadenza automatica 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, un'utile panoramica delle chiamate. Puoi integrare questa dashboard con analisi dettagliate in Cloud Monitoring.
Metriche di Cloud Monitoring
Cloud Monitoring raccoglie metriche, eventi e metadati dai prodotti Google Cloud. La dashboard sull'utilizzo nella console Firestore segnala gli stessi dati delle metriche. Per configurare dashboard personalizzate e avvisi sull'utilizzo, utilizza Cloud Monitoring.
Cloud Monitoring include le seguenti metriche Firestore:
Nome metrica | Descrizione |
---|---|
Operazioni di lettura documenti |
Il numero di letture di documenti riuscite. Puoi suddividere questa metrica in base al tipo di lettura: CERCA o QUERY. Questa metrica non include le letture da operazioni di esportazione gestita. |
Operazioni di scrittura documenti |
Il numero di scritture di documenti riuscite. Puoi suddividere la metrica in base al tipo di scrittura: CREATE o UPDATE. Questa metrica non include le scritture da operazioni di importazione gestita. |
Operazioni di eliminazione documenti | Il numero di eliminazioni di documenti riuscite. |
Connessioni attive |
Il numero di connessioni attive al tuo database. Ogni SDK web e mobile attivo mantiene una singola connessione, che può essere condivisa tra più listener di snapshot. Le librerie client server creano una connessione per listener di snapshot. |
Listener di snapshot |
Il numero di listener di snapshot in tutte le connessioni attive. |
Conteggio delle eliminazioni in tempo reale |
Conteggio totale di documenti eliminati dai criteri di durata (TTL). |
Scadenza della durata per i ritardi per l'eliminazione |
Tempo trascorso tra la scadenza di un documento ai sensi di un criterio di durata (TTL) e la data in cui è stato effettivamente eliminato. |
- Utilizzo degli aggiornamenti in tempo reale
Utilizza le metriche relative a connessioni attive e 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 sottoscrive a 10 query. In questo modo le metriche aumentano di 1 connessione attiva e di 10 listener di snapshot.
- Frequenza di campionamento
Le metriche di Firestore vengono campionate ogni minuto, ma la visualizzazione degli aggiornamenti nelle dashboard può richiedere fino a 4 minuti.
Metriche di latenza
Le metriche di latenza di backend sono disponibili tramite le metriche firestore comuni di Google Cloud.
Ad esempio, un grafico relativo alla latenza p50 è disponibile nella vista Metrics Explorer della console Cloud.
Configura una dashboard di Cloud Monitoring
Per configurare una dashboard con le metriche di Firestore, consulta Gestire una dashboard personalizzata e Aggiungere widget alla dashboard.
Passaggi successivi
- Scopri di più su Cloud Monitoring.
- Scopri le best practice per il monitoraggio delle prestazioni di Firestore.