Es gibt verschiedene Möglichkeiten, die Leistung Ihrer Firebase-Echtzeitdatenbank zu überwachen und potenzielle Probleme in Ihrer App zu erkennen. Ein Blick auf die eingehende und ausgehende Bandbreite und Auslastung Ihrer App kann Ihnen auch eine Vorstellung davon geben, was auf Ihrer Rechnung zu erwarten ist. Wenn etwas nicht in Ordnung zu sein scheint, kann es außerdem hilfreich sein, sich ein klares Bild von den Vorgängen Ihrer Datenbank zu machen.
Auf dieser Seite wird die Leistungsüberwachung der Echtzeitdatenbank erläutert. Informationen zur Nutzungsüberwachung finden Sie unter Datenbanknutzung überwachen .
Verwenden Sie Überwachungstools für Echtzeitdatenbanken
Sie können Daten über die Leistung Ihrer Realtime Database mit einigen verschiedenen Tools sammeln, je nach benötigter Granularität.
Verwenden Sie das Realtime Database Profiler-Tool
Das Echtzeit-Datenbank-Profiler-Tool bietet einen Echtzeit-Überblick über Lese-/Schreibvorgänge in Ihrer Datenbank. Der Bericht enthält neben nicht indizierten Abfragen Informationen zur Geschwindigkeit und Nutzlastgröße jeder Operation. Es enthält jedoch keine historischen Informationen oder Statistiken über den Verbindungsaufwand und sollte nicht zur Schätzung der Abrechnungskosten verwendet werden .
Weitere Informationen zur Verwendung des Profiler-Tools finden Sie unter Profilerstellung Ihrer Datenbank .
Verwenden Sie die Firebase-Konsole
Die Registerkarte Nutzung in der Firebase-Konsole bietet Informationen über gleichzeitige Verbindungen zu Ihrer Datenbank, wie viele Daten Sie speichern, ausgehende Bandbreite (einschließlich Protokoll- und Verschlüsselungs-Overhead) und die Belastung Ihrer Datenbank in 1-Minuten-Intervallen. Die Registerkarte „Nutzung “ gibt Ihnen zwar einen genaueren Überblick über die Gesamtleistung Ihrer Datenbank, aber Sie können möglicherweise nicht genügend Details aufschlüsseln, um potenzielle Leistungsprobleme zu beheben.
Verwenden Sie Cloud-Monitoring
Mit Cloud Monitoring von Google Cloud können Sie den Metrik-Explorer verwenden, um einzelne Leistungsmesswerte anzuzeigen, oder verschiedene Dashboards mit Diagrammen erstellen, die verschiedene Kombinationen von Leistungsmesswerten im Laufe der Zeit anzeigen. Die Echtzeit-Datenbank-Integration mit Cloud Monitoring bietet die tiefste Granularität.
Die Schritte zum Einrichten von Cloud Monitoring werden in Datenbanknutzung überwachen beschrieben.
In den folgenden Abschnitten finden Sie Tipps zur Verwendung bestimmter Cloud Monitoring-Messwerte zur Erkennung von Leistungsproblemen.
Überwachen Sie die Leistung in Cloud Monitoring
Wenn Sie Probleme mit der Leistung haben, einschließlich Verfügbarkeit oder Latenz, sollten Sie Cloud Monitoring verwenden, um die folgenden Messwerte zu überwachen. Beachten Sie, dass allen Metriktypnamen das Präfix firebasedatabase.googleapis.com/
vorangestellt ist.
Metrikname | Beschreibung |
---|---|
Datenbank laden | |
Netzwerk wegen Überschreitung deaktiviert | |
Speicher wegen Überschreitung deaktiviert | |
Kombinieren Sie Metriken in Diagrammen auf Ihrem Dashboard, um hilfreiche Einblicke und Übersichten zu erhalten. Probieren Sie zum Beispiel die folgenden Kombinationen aus:
- Vorgänge: Verwenden Sie die Metrik
io/database_load
um zu sehen, wie viel Ihrer gesamten Datenbanklast von jedem Vorgangstyp verwendet wird. Achten Sie darauf,io/database_load
nach Typ zu gruppieren, um Fehler bei verschiedenen Vorgangstypen zu beheben. - Speicher: Verwenden Sie
storage/limit
undstorage/total_bytes
, um Ihre Speicherauslastung im Verhältnis zu den Speicherlimits der Echtzeitdatenbank zu überwachen. Sie können auchstorage/disabled_for_overages
hinzufügen, um zu sehen, ob Ihre App aufgrund von überschrittenen Speicherlimits ausgefallen ist. - SSL-Overhead: Verwenden Sie
network/https_requests_count
um zu überwachen, wie viele SSL-Verbindungsanfragen Ihre Datenbank erhalten hat, und teilen Sie Anfragen, die ein vorhandenes SSL-Sitzungsticket wiederverwendet haben, mit demreused_ssl_session
Filter aus. Sie können dies anhand vonnetwork/sent_bytes_count
undnetwork/sent_payload_and_protocol_bytes_count
messen, um zu überwachen, ob Ihre App SSL-Sitzungstickets effizient verwendet oder nicht.
Sie können auch Warnungen über Cloud Monitoring einrichten und Benachrichtigungen basierend auf Echtzeitdatenbank-Metriken erhalten. Sie können sich beispielsweise dafür entscheiden, eine Benachrichtigung zu erhalten, wenn sich Ihr io/database_load
einem bestimmten Schwellenwert nähert.
Sehen Sie sich die vollständige Liste der Echtzeitdatenbank-Metriken an, die über Cloud Monitoring verfügbar sind .
Datenbankladetypen
Die Metrik io/database_load
stellt auch eine Bezeichnung dafür bereit, welcher Vorgangstyp die Last verursacht hat. Im Folgenden sind die möglichen Arten von gemessenen Vorgängen aufgeführt:
-
admin
: Admin-Operationen wie das Festlegen von Regeln und das Lesen von Projektmetadaten. -
auth
: Überprüfung der Authentifizierung von Dienstkonten oder Firebase-Authentifizierung für einen einzelnen Client. -
client_management
: Behandlung des Hinzufügens und Entfernens gleichzeitiger Verbindungen, dies umfasst das Ausführen von Trennungsvorgängen beim Entfernen. -
get_shallow
: Abrufen der Daten von einem REST GET mitshallow=true
. -
get
: Verarbeitung von REST GET-Operationen. -
listen
: Abrufen der Anfangsdaten füron
-and-once
-Operationen von verbundenen Clients. -
on_disconnect
: Registrierung bei Trennungsvorgängen von Clients. -
put
: Handhabungset
Operationen von Clients oder REST PUT-Operationen. -
transaction
: Durchführen von Transaktionen aus bedingten REST-Anforderungen oder einertransaction
von einem Client. -
update
: Verarbeitung vonupdate
oder REST-PATCH-Anforderungen.
Überwachen Sie Sicherheitsregeln in Cloud Monitoring
Sie können auch die Auswertung von Sicherheitsregeln analysieren. Beachten Sie, dass allen Metriktypnamen das Präfix firebasedatabase.googleapis.com/
vorangestellt ist.
Metrikname | Beschreibung |
---|---|
Regelauswertungen | rules/evaluation_count . Die Anzahl der Auswertungen von Echtzeit-Datenbankregeln, die als Reaktion auf Schreib- oder Leseanforderungen durchgeführt wurden. Sie können diese Metrik nach dem Ergebnis der Anfrage aufschlüsseln (ALLOW, DENY oder ERROR). |
Passen Sie Ihr Cloud Monitoring-Diagramm für Regelauswertungen nach Bedarf an, z. B. durch Filtern nach bestimmten Auswertungsergebnissen, ALLOW, DENY oder ERROR. Das Einrichten und Anpassen von Diagrammen wird in Überwachen der Datenbanknutzung behandelt.
Sehen Sie sich die vollständige Liste der Echtzeitdatenbank-Metriken an, die über Cloud Monitoring verfügbar sind .