Nutzung überwachen
Auf dieser Seite wird beschrieben, wie Sie die Firestore-Nutzung überwachen und potenzielle Probleme in Ihrer Anwendung erkennen können.
Nutzungs-Dashboard
Mit den Nutzungsdashboards in der Google Cloud Console und der Firebase Console können Sie sich Lese-, Schreib- und Löschvorgänge von Dokumenten im Zeitverlauf ansehen.
Zugriffssteuerung
Für die Nutzungsdashboards ist die IAM-Berechtigung monitoring.timeSeries.list
erforderlich.
Diese Berechtigung ist in den Rollen "Projektinhaber", "Bearbeiter" und "Betrachter" enthalten. Sie können diese Berechtigung auch über eine Cloud Monitoring-Rolle oder eine benutzerdefinierte Rolle gewähren.
Dashboard zur Datenbanknutzung
Öffnen Sie in der Google Cloud Console die Seite Nutzung der Datenbank, um Nutzungsmesswerte für eine Firestore-Datenbank anzusehen.
Rufen Sie in der Google Cloud Console die Seite Datenbanken auf.
Wählen Sie die benötigte Datenbank aus der Liste der Datenbanken aus.
Klicken Sie im Navigationsmenü auf Nutzung.
Klicken Sie auf den Link in der Meldung, die auf der Seite angezeigt wird, um die Datenbanknutzung anzuzeigen.
Dashboard für zusammengefasste Nutzung
Wenn Ihr Projekt mehrere Firestore-Datenbanken hat, können Sie sich in der Google Cloud Console oder der Firebase Console zusammengefasste Nutzungsmesswerte ansehen. Im Nutzungs-Dashboard auf Projektebene werden Nutzungsmesswerte aus allen Firestore-Datenbanken im nativen Modus kombiniert. In diesem Dashboard ist die Nutzung von Firestore-Datenbanken im Datastore-Modus nicht enthalten.
Google Cloud Console
Rufen Sie in der Google Cloud Console die Seite Projektnutzung auf.
Zur Projektnutzung im Google Cloud-Projekt
Das Dashboard für die Projektnutzung zeigt Dokumentvorgänge im Zeitverlauf so:
Firebase Console
Nutzungs-Dashboard und Abrechnungsberichte
Die Firestore-Nutzungsdashboards in der Firebase Console und der Cloud Console liefern eine Schätzung der Nutzung. Sie helfen Ihnen, Nutzungsspitzen zu erkennen. Das Dashboard bietet jedoch keine genaue Ansicht der abgerechneten Vorgänge. Die abgerechnete Nutzung ist wahrscheinlich höher. In allen Fällen einer Abweichung hat der Abrechnungsbericht Vorrang vor dem Nutzungs-Dashboard.
Folgende Vorgänge können Abweichungen zwischen dem Nutzungs-Dashboard und der abgerechneten Nutzung bedingen:
- Import- und Exportvorgänge: Lese- und Schreibvorgänge, die von diesen Vorgängen ausgeführt werden, werden nicht im Nutzungs-Dashboard angezeigt.
- No-Op-Schreibvorgänge, bei denen nur die Verifizierung durchgeführt wird. Schreibvorgänge, die nur prüfen, ob ein Dokument vorhanden oder nicht vorhanden ist, tragen zu abgerechneten Lesevorgängen bei, werden aber im Dashboard für die Schreibnutzung als „UPDATE_NOOP“ bzw. „DELETE_NOOP“ angezeigt.
- Managementfreie Schreibvorgänge. Vorgänge, die nicht zu einer Änderung der Datenbank führen, z. B. eine Aktualisierung, durch die Feldwerte oder ein Schreibvorgang in ein gelöschtes Dokument nicht geändert werden, werden im Nutzungsdashboard möglicherweise als „UPDATE_NOOP“ oder „DELETE_NOOP“ angezeigt. Auch wenn sie als „NOOP“ angezeigt werden, tragen sie dennoch zu abgerechneten Vorgängen bei.
Minimierte Schreibvorgänge. Wenn mehrere Schreibvorgänge in dasselbe Dokument schnell hintereinander sind, kann das Nutzungs-Dashboard mehrere Schreibvorgänge zusammenfassen und als einer zählen. Bei der Abrechnungsnutzung wird jeder Schreibvorgang trotzdem separat gezählt.
Das Nutzungs-Dashboard minimiert auch Schreibvorgänge für Feldtransformationen wie Server-Zeitstempel, numerische Inkremente und Array-Union-Vorgänge. Bei Feldtransformationen kann das Nutzungs-Dashboard mehrere Vorgänge als einen Vorgang zählen.
- Abfragen, die keine Ergebnisse zurückgeben Für Abfragen ohne Ergebnisse fallen Kosten für einen Lesevorgang an. Diese Nutzung wird in Rechnung gestellt, aber nicht im Nutzungs-Dashboard angezeigt.
- Lesevorgänge für Aggregationsabfragen wie COUNT. Diese Nutzung wird abgerechnet, aber nicht im Nutzungsdashboard angezeigt.
Das Nutzungs-Dashboard für Löschvorgänge erfasst keine automatischen Ablaufvorgänge, die von Richtlinien zur Gültigkeitsdauer (TTL) ausgeführt werden. Weitere Informationen finden Sie in den TTL-Messwerten von Cloud Monitoring.
Sicherheitsregeln anwenden
Die Firebase Console enthält auch ein Dashboard zur Evaluierung von Sicherheitsregeln. Dieses bietet eine hilfreiche Übersicht über Regelaufrufe. Sie können dieses Dashboard durch eine detaillierte Analyse in Cloud Monitoring ergänzen.
Cloud Monitoring-Messwerte
Cloud Monitoring erfasst Messwerte, Ereignisse und Metadaten aus Google Cloud-Produkten. Diese Messwertdaten sind auch im Nutzungs-Dashboard der Firestore Console aufgeführt. Mit Cloud Monitoring können Sie benutzerdefinierte Dashboards und Nutzungsbenachrichtigungen einrichten.
In Cloud Monitoring werden die folgenden Firestore-Messwerte erfasst:
Name des Messwerts | Beschreibung |
---|---|
Lesevorgänge für das Dokument |
Die Anzahl der erfolgreichen Dokumentlesevorgänge. Sie können diesen Messwert nach Art des Lesevorgangs aufschlüsseln: LOOKUP oder QUERY. Dieser Messwert enthält keine Lesevorgänge aus verwalteten Exportvorgängen. |
Schreibvorgänge für das Dokument |
Die Anzahl der erfolgreichen Dokumentschreibvorgänge. Sie können den Messwert nach der Art des Schreibvorgangs aufschlüsseln: CREATE oder UPDATE. Dieser Messwert enthält keine Schreibvorgänge aus verwalteten Importvorgängen. |
Löschvorgänge für das Dokument | Die Anzahl der erfolgreichen Dokumentlöschvorgänge. |
Aktive Verbindungen |
Die Anzahl der aktiven Verbindungen zu Ihrer Datenbank. Jedes aktive mobile und Web-SDK hält eine einzelne Verbindung, die für mehrere Snapshot-Listener freigegeben werden kann. Die Server-Client-Bibliotheken erstellen eine Verbindung pro Snapshot-Listener. |
Snapshot-Listener |
Die Anzahl der Snapshot-Listener für alle aktiven Verbindungen. |
Anzahl der Löschungen der Gültigkeitsdauer |
Gesamtzahl der Dokumente, die aufgrund von Richtlinien zur Gültigkeitsdauer (TTL) gelöscht wurden. |
Verzögerungen bei der Gültigkeitsdauer bis zum Löschen |
Verstrichene Zeit zwischen dem Ablauf eines Dokuments gemäß einer Richtlinie zur Gültigkeitsdauer (TTL) und dem tatsächlichen Löschen. |
- Nutzung bei Echtzeit-Update
Mithilfe der Messwerte für aktive Verbindungen und Snapshot-Listener können Sie die Nutzung von Echtzeit-Updates messen.
Angenommen, ein Nutzer öffnet Ihre App auf seinem Smartphone. Die App stellt dann eine Verbindung zu Firestore her und abonniert zehn Abfragen. Dadurch werden Ihre Messwerte um 1 aktive Verbindung und 10 Snapshot-Listener erhöht.
- Abtastrate
Die Firestore-Messwerte werden minutenweise erfasst. Es kann aber bis zu vier Minuten dauern, bis die neuen Werte in Ihren Dashboards angezeigt werden.
Latenzmesswerte
Back-End-Latenzmesswerte sind über gängige firestore-Messwerte von Google Cloud verfügbar.
In der Metrics Explorer-Ansicht der Cloud Console finden Sie beispielsweise ein Diagramm zur p50-Latenz.
Cloud Monitoring-Dashboard einrichten
Informationen zum Einrichten eines Dashboards mit Firestore-Messwerten finden Sie unter Benutzerdefiniertes Dashboard verwalten und Dashboard-Widgets hinzufügen.
Nächste Schritte
- Mehr über Cloud Monitoring erfahren
- Best Practices für das Monitoring der Firestore-Leistung