Überwachen Sie die Cloud Firestore-Aktivität

Auf dieser Seite wird beschrieben, wie Sie Ihre Cloud Firestore-Nutzung überwachen und potenzielle Probleme in Ihrer App erkennen können.

Nutzungs-Dashboard

Verwenden Sie die Nutzungs-Dashboards in der Google Cloud Platform-Konsole und der Firebase-Konsole, um Lese-, Schreib- und Löschvorgänge für Dokumente im Zeitverlauf anzuzeigen.

Zugangskontrolle

Für die Nutzungsdashboards ist die Cloud IAM-Berechtigung monitoring.timeSeries.list erforderlich. Die Rollen Projekteigentümer, Bearbeiter und Betrachter gewähren diese Berechtigung. Sie können diese Berechtigung auch über eine Cloud Monitoring-Rolle oder eine benutzerdefinierte Rolle erteilen.

Dashboard zur Datenbanknutzung

Um Nutzungsmetriken für eine Cloud Firestore-Datenbank anzuzeigen, öffnen Sie die Seite „ Datenbanknutzung“ in der GCP Console.

  1. Gehen Sie in der Google Cloud Platform Console zur Seite „Datenbanken“ .

    Gehen Sie zu Datenbanken

  2. Wählen Sie aus der Liste der Datenbanken die gewünschte Datenbank aus.

  3. Klicken Sie im Navigationsmenü auf Nutzung .

  4. Klicken Sie auf den Link in der Meldung, die auf der Seite angezeigt wird, um Ihre Datenbanknutzung anzuzeigen.

    Das Cloud Firestore-Datenbanknutzungs-Dashboard in der GCP Console.

Aggregiertes Nutzungs-Dashboard

Wenn Ihr Projekt über mehrere Cloud Firestore-Datenbanken verfügt, können Sie aggregierte Nutzungsmetriken in der GCP Console oder Firebase Console anzeigen.

GCP-Konsole

Gehen Sie in der Google Cloud Platform Console zur Seite „Projektnutzung“ .

Gehen Sie zur Projektnutzung des GCP-Projekts

Das Projektnutzungs-Dashboard zeigt Dokumentvorgänge im Zeitverlauf wie folgt an:

Das Cloud Firestore-Projektnutzungs-Dashboard in der GCP Console.

Firebase-Konsole

Gehen Sie zur Cloud Firestore-Nutzungsseite (Firebase-Konsole)

Das Cloud Firestore-Nutzungs-Dashboard in der Firebase-Konsole.

Nutzungs-Dashboard und Abrechnungsberichte

Die Cloud Firestore-Nutzungsdashboards in den Firebase- und Cloud-Konsolen bieten eine Schätzung der Nutzung. Sie können Ihnen dabei helfen, Nutzungsspitzen zu erkennen. Das Dashboard bietet jedoch keinen genauen Überblick über die abgerechneten Vorgänge. Die in Rechnung gestellte Nutzung ist wahrscheinlich höher. In allen Fällen von Unstimmigkeiten hat der Abrechnungsbericht Vorrang vor dem Nutzungs-Dashboard.

Zu den Vorgängen, die zu Diskrepanzen zwischen dem Nutzungs-Dashboard und der abgerechneten Nutzung führen, gehören:

  • Import- und Exportvorgänge. Von diesen Vorgängen durchgeführte Lese- und Schreibvorgänge werden nicht im Nutzungs-Dashboard angezeigt.
  • No-Op-Nur-Überprüfungs-Schreibvorgänge. Schreibvorgänge, die nur das Vorhandensein oder Nichtvorhandensein eines Dokuments überprüfen, tragen zu abgerechneten Lesevorgängen bei, werden jedoch im Schreibnutzungs-Dashboard als „UPDATE_NOOP“ bzw. „DELETE_NOOP“ angezeigt.
  • No-op schreibt. Vorgänge, die keine Änderung an der Datenbank zur Folge haben, wie z. B. eine Aktualisierung, die keine Feldwerte ändert, oder ein Schreibvorgang in ein gelöschtes Dokument, werden im Nutzungs-Dashboard möglicherweise als „UPDATE_NOOP“ oder „DELETE_NOOP“ angezeigt. Auch wenn sie als „NOOP“ angezeigt werden, tragen sie dennoch zu den abgerechneten Vorgängen bei.
  • Reduzierte Schreibvorgänge. In Fällen mit mehreren Schreibvorgängen in dasselbe Dokument in schneller Folge kann es sein, dass das Nutzungsdashboard mehrere Schreibvorgänge zusammenfasst und sie als einen zählt. Bei der Abrechnung der Nutzung wird weiterhin jeder Schreibvorgang separat gezählt.

    Das Nutzungs-Dashboard reduziert auch Schreibvorgänge für Feldtransformationen wie Server-Zeitstempel, numerische Inkremente und Array-Union-Operationen. Bei Feldtransformationen zählt das Nutzungsdashboard möglicherweise mehrere Vorgänge als einen einzigen Vorgang.

  • Abfragen, die keine Ergebnisse zurückgeben. Bei Abfragen ohne Ergebnisse fallen Kosten für einen Lesevorgang an. Diese Nutzung wird in Rechnung gestellt, erscheint aber nicht im Nutzungs-Dashboard.
  • Lesevorgänge im Zusammenhang mit Aggregationsabfragen wie COUNT. Diese Nutzung wird in Rechnung gestellt, erscheint aber nicht im Nutzungs-Dashboard.

Das Nutzungs-Dashboard für Löschvorgänge erfasst keine automatischen Ablaufvorgänge, die von Time-to-Live-Richtlinien (TTL) durchgeführt werden. Bitte beachten Sie die TTL-Metriken von Cloud Monitoring .

Verwendung von Sicherheitsregeln

Darüber hinaus bietet die Firebase-Konsole ein Dashboard zur Bewertung von Sicherheitsregeln, eine nützliche Übersicht über Regelaufrufe. Sie können dieses Dashboard durch detaillierte Analysen im Cloud Monitoring ergänzen.

Gehen Sie zu Regeln

Cloud Firestore Rules-Überwachungs-Dashboard in der Firebase-Konsole.

Cloud-Monitoring-Metriken

Cloud Monitoring sammelt Metriken, Ereignisse und Metadaten von Google Cloud-Produkten. Das Nutzungs-Dashboard in der Cloud Firestore-Konsole meldet dieselben Metrikdaten. Verwenden Sie Cloud Monitoring, um benutzerdefinierte Dashboards und Nutzungswarnungen einzurichten.

Cloud Monitoring umfasst die folgenden Cloud Firestore-Metriken:

Metrikname Beschreibung
Dokument liest

Die Anzahl erfolgreicher Dokumentlesevorgänge. Sie können diese Metrik nach der Art des Lesevorgangs aufschlüsseln: LOOKUP oder QUERY.

Diese Metrik umfasst keine Lesevorgänge aus verwalteten Exportvorgängen.

Dokument schreibt

Die Anzahl erfolgreicher Dokumentschreibvorgänge. Sie können die Metrik nach der Art des Schreibvorgangs aufschlüsseln: CREATE oder UPDATE.

Diese Metrik umfasst keine Schreibvorgänge aus verwalteten Importvorgängen.

Dokument wird gelöscht Die Anzahl erfolgreicher Dokumentlöschungen.
Aktive Verbindungen

Die Anzahl der aktiven Verbindungen zu Ihrer Datenbank.

Jedes aktive Mobil- und Web-SDK unterhält eine einzelne Verbindung, die von mehreren Snapshot-Listenern gemeinsam genutzt 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 über die Gültigkeitsdauer

Gesamtzahl der Dokumente, die durch Time-to-Live-Richtlinien (TTL) gelöscht wurden.

Verzögerungen beim Ablauf der Gültigkeitsdauer bis hin zum Löschen

Zeit, die zwischen dem Ablauf eines Dokuments gemäß einer Time-to-Live-Richtlinie (TTL) und dem tatsächlichen Löschen verstrichen ist.

Nutzung von Echtzeit-Updates

Verwenden Sie die Metriken für aktive Verbindungen und Snapshot-Listener, um Ihre Nutzung von Echtzeitaktualisierungen zu messen.

Nehmen wir an, ein Benutzer öffnet Ihre App auf seinem Telefon. Die App stellt dann eine Verbindung zum Cloud Firestore her und abonniert 10 Abfragen. Dadurch erhöhen sich Ihre Messwerte um 1 aktive Verbindung und 10 Snapshot-Listener.

Abtastrate

Die Cloud Firestore-Metriken werden jede Minute abgetastet, es kann jedoch bis zu 4 Minuten dauern, bis Aktualisierungen in Ihren Dashboards angezeigt werden.

Latenzmetriken

Back-End-Latenzmetriken sind über gängige Google Cloud Firestore- Metriken verfügbar.

Ein Diagramm der p50-Latenz finden Sie beispielsweise in der Metrik-Explorer-Ansicht der Cloud Console.

Richten Sie ein Cloud Monitoring-Dashboard ein

Informationen zum Einrichten eines Dashboards mit Cloud Firestore-Metriken finden Sie unter Benutzerdefiniertes Dashboard verwalten und Dashboard-Widgets hinzufügen .

Was kommt als nächstes