Questa pagina descrive come monitorare l'utilizzo di Cloud Firestore e individuare potenziali problemi nella tua app.
Dashboard sull'utilizzo
Utilizza le dashboard sull'utilizzo nella console Google Cloud e nella Firebase console per visualizzare le operazioni di lettura, scrittura ed eliminazione dei documenti nel tempo.
Controllo degli accessi
Le dashboard sull'utilizzo richiedono l'autorizzazione Cloud IAM monitoring.timeSeries.list.
I ruoli Proprietario progetto, Editor e Visualizzatore concedono questa autorizzazione. Puoi anche concedere questa autorizzazione
tramite un Cloud Monitoring ruolo
o un ruolo personalizzato.
Dashboard sull'utilizzo del database
Per visualizzare le metriche di utilizzo di un database Cloud 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 nella pagina per visualizzare l'utilizzo del database.
Dashboard sull'utilizzo del database Cloud Firestore nella console Google Cloud."/>
Dashboard sull'utilizzo aggregato
Se il tuo progetto ha più database Cloud Firestore, puoi visualizzare le metriche di utilizzo aggregate nella console Google Cloud o nella console Firebase.
Console Google Cloud
Nella console Google Cloud, vai alla pagina Utilizzo del progetto.
Vai all'utilizzo del progetto Google Cloud
La dashboard sull'utilizzo del progetto mostra le operazioni sui documenti nel tempo nel seguente modo:
Dashboard sull'utilizzo del progetto Cloud Firestore nella console Google Cloud."/>
Firebase console
Vai alla pagina sull'utilizzo (Firebase console)Cloud Firestore
Dashboard sull'utilizzo di Cloud Firestore nella Firebase console."/>
Dashboard sull'utilizzo e report di fatturazione
Le dashboard sull'utilizzo di Cloud 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 sulla 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 operazioni di lettura e scrittura eseguite da queste operazioni non vengono visualizzate nella dashboard sull'utilizzo.
- Scritture autonome 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 sull'utilizzo delle scritture.
- Scritture autonome. Le operazioni che non comportano una modifica al database, ad esempio un aggiornamento che non modifica i valori dei campi o una scrittura in un documento eliminato, potrebbero essere visualizzate nella dashboard sull'utilizzo come `UPDATE_NOOP` o `DELETE_NOOP`. Anche se vengono visualizzate come `NOOP`, contribuiscono comunque alle operazioni fatturate.
Scritture compresse. Nei casi di più scritture nello stesso documento in rapida successione, la dashboard sull'utilizzo potrebbe comprimere più scritture e contarle come una sola. Quando si fattura 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 di array. Per le trasformazioni dei campi, la dashboard sull'utilizzo potrebbe contare più operazioni come una singola operazione.
- Query che restituiscono zero risultati. Le query con zero risultati comportano un costo di un'operazione di lettura. Questo utilizzo viene fatturato, ma non viene visualizzato nella dashboard sull'utilizzo.
- Operazioni di lettura dalle voci di indice lette. Questo utilizzo viene fatturato, ma non viene visualizzato nella dashboard sull'utilizzo. Ad esempio, le query di aggregazione fatturano le voci di indice lette, ma questo utilizzo non viene visualizzato nella dashboard sull'utilizzo.
La dashboard sull'utilizzo per le eliminazioni non acquisisce le operazioni di scadenza automatica eseguite dalle policy di durata (TTL). Consulta le metriche TTL di Cloud Monitoring.
Utilizzo delle regole di sicurezza
Inoltre, la console Firebase fornisce una dashboard di valutazione delle regole di sicurezza Firebase, una visualizzazione utile e rapida delle invocazioni delle regole. Puoi anche monitorare l'utilizzo delle regole di sicurezza Firebase tramite Cloud Monitoring. Questo fornisce le stesse metriche di valutazione delle regole, oltre alla possibilità di creare dashboard personalizzate, analizzare le tendenze e configurare avvisi (ad esempio, quando le richieste rifiutate aumentano). Per l'elenco completo delle metriche disponibili, consulta il riferimento alle metriche Cloud Monitoring.
Dashboard di monitoraggio delle regole di Cloud Firestore
nella console Firebase."/>
Metriche Cloud Monitoring
Cloud Monitoring raccoglie metriche, eventi e metadati dai prodotti Google Cloud. La dashboard sull'utilizzo nella console Cloud Firestore riporta gli stessi dati delle metriche. Per configurare dashboard personalizzate e avvisi di utilizzo, utilizza Cloud Monitoring.
Cloud Monitoring include le seguenti Cloud Firestore metriche:
| Nome metrica | Descrizione |
|---|---|
| Operazioni di lettura documenti |
Il numero di operazioni di lettura dei documenti riuscite. Puoi suddividere questa metrica in base al tipo di lettura: LOOKUP o QUERY. Questa metrica non include le letture dalle operazioni di esportazione gestita o di eliminazione collettiva operazioni. |
| Operazioni di scrittura documenti |
Il numero di operazioni di scrittura dei documenti riuscite. Puoi suddividere la metrica in base al tipo di scrittura: CREATE o UPDATE. Questa metrica non include le scritture dalle operazioni di importazione gestita. |
| Operazioni di eliminazione documenti | Il numero di operazioni di eliminazione dei documenti riuscite. |
| Connessioni attive |
Il numero di connessioni attive al database. Ogni SDK mobile e web attivo mantiene una singola connessione, che può essere condivisa tra più listener snapshot. Le librerie client server creano una connessione per ogni listener snapshot. |
| Listener snapshot |
Il numero di listener snapshot in tutte le connessioni attive. |
| Conteggio eliminazioni per durata (TTL) |
Conteggio totale dei documenti eliminati dalle policy di durata (TTL). |
| Ritardi tra scadenza e eliminazione per durata (TTL) |
Tempo trascorso tra il momento in cui un documento è scaduto in base a una policy di durata (TTL) e il momento in cui è stato effettivamente eliminato. |
- Utilizzo degli aggiornamenti in tempo reale
Utilizza le metriche delle connessioni attive e dei listener snapshot per misurare il tuo utilizzo degli aggiornamenti in tempo reale.
Supponiamo che un utente apra la tua app sul suo smartphone. L'app si connette a Cloud Firestore e si abbona a 10 query. Le metriche aumentano di 1 connessione attiva e 10 listener snapshot.
- Frequenza di campionamento
Le metriche Cloud Firestore vengono campionate ogni minuto, ma gli aggiornamenti potrebbero richiedere fino a 4 minuti per essere visualizzati nelle dashboard.
Metriche di latenza
Le metriche di latenza del backend sono disponibili tramite le metriche comuni Google Cloud Firestore.
Ad esempio, un grafico della latenza p50 è disponibile nella visualizzazione dell'explorer delle metriche di Cloud Console.
Configurare una dashboard Cloud Monitoring
Per visualizzare una dashboard predefinita o configurare una dashboard, consulta Utilizzare la dashboard di monitoraggio.
Passaggi successivi
- Scopri di più su Cloud Monitoring.
- Scopri di più sulle best practice per il monitoraggio del rendimento di Firestore.