Einfache Budgetbenachrichtigungen sind relativ einfach, um aktuelle Abrechnungen zu erhalten. möchten Sie komplexere Benachrichtigungen mit benutzerdefinierter Logik erstellen. Hier sind zwei Möglichkeiten:
Mit Cloud Monitoring detailliertere und zeitnahe Benachrichtigungen erstellen
Verwenden Sie eine Pub/Sub-Abrechnungsbenachrichtigung sowie eine entsprechende Cloud Functions-Funktion zum Erstellen benutzerdefinierter Verhaltensweisen als Reaktion auf Änderungen in Ihrem Ausgaben
Beide Methoden erfordern mehr Arbeit Ihrerseits, bieten Ihnen jedoch genau steuern, welche Arten von Warnungen Sie erhalten und wie antworten können.
Diese Seite bietet einen Überblick über jeden dieser Ansätze.
Erstellen Sie mit Cloud Monitoring ausgefeiltere Benachrichtigungen.
Mit einfachen Budgetbenachrichtigungen werden Sie per E-Mail informiert, wenn Ihre Gesamtabrechnung erreicht ist. bestimmte Schwellenwerte erreichen. Vielleicht möchten Sie auch wissen, dass einzelne Dienste unerwartet ansteigen – bevor sie die Gelegenheit dazu hatten. sich erheblich auf Ihr Budget auswirken. Für komplexere Anwendungsfälle wie diesen empfehlen wir Ihnen, sich über Cloud Monitoring zu informieren, ein Google Cloud-Tool die für Ihr Firebase-Projekt verfügbar sind.
Cloud Monitoring eignet sich für verschiedene Arten von Benachrichtigungen:
Wenn eine Ressource, die Ihr Projekt benötigt, nicht verfügbar ist (beide Firebase- und Google Cloud-Dienste, aber auch für externe Dienste wie AWS)
Wenn Dienste wie Cloud Functions länger als erwartet dauern, antworten
Wenn Ihr Cloud Storage-Bucket, Ihre Realtime Database-Instanz oder Cloud Firestore Instanz lehnt zu viele Anfragen ab. Dies weist darauf hin, Firebase Security Rules ist möglicherweise falsch.
Wenn die Menge der Ressourcen, die von einigen Ihrer Firebase-Produkte verwendet werden, über einen bestimmten Grenzwert gestiegen sind
Über Cloud Monitoring erstellte Benachrichtigungen werden in der Regel schneller gesendet als einfache E-Mail-Benachrichtigungen zu Budgets, die in der Regel einmal täglich gesendet werden. Benachrichtigungen können SMS-Nachrichten, Slack-Kanal-Nachrichten, PagerDuty-Benachrichtigungen Webhooks und vieles mehr. Mit diesen Optionen können Sie immer höhere praktikables Maß an Sichtbarkeit.
Cloud Monitoring verwenden
Für den Einstieg in Cloud Monitoring empfehlen wir, mit dem Metrics Explorer, Damit können Sie Grafiken mit benutzerdefinierten Messwerten Firebase/Google Cloud-Projekt erstellen und deren Nutzung visualisieren.
Insbesondere können Sie sich Ressourcen wie Ihre Cloud Firestore, Realtime Database oder Cloud Functions-Instanzen ansehen. Sie können Nutzungsinformationen über Produkte (z. B. Anzahl der Lesevorgänge, gesendeten Byte oder -Aufrufe), die sich auf Ihre Abrechnung auswirken würden.
Wenn Sie die Ressourcennutzung im Messwert-Explorer visualisiert haben, empfehlen wir Ihnen, eine Benachrichtigungsrichtlinie für die für Sie wichtigsten Messwerte zu erstellen. Hier einige Beispiele für Benachrichtigungsrichtlinien:
Wenn die Anzahl der Lesevorgänge in einem 30-Minuten-Zeitraum größer als ein bestimmter Wert
Wenn die Nutzung einer bestimmten Ressource (z. B. eines Funktionsaufrufs) in einem bestimmten Zeitraum zu schnell zunimmt
Zusätzliche Abrechnungslogik erstellen
Budgetbenachrichtigungen senden automatisch eine E-Mail, wenn Ihr Budget bestimmte aber für komplexere Warnungen oder programmatische Reaktionen auf Ausgaben erhöhen, können Sie eine zusätzliche benutzerdefinierte Logik einrichten, zu Google Cloud Pub/Sub-Nachrichten.
Zum Beispiel können Sie Warnungen an Slack-Kanäle oder per Textnachricht senden oder Sie können je nach Ausgabenhöhe programmatische Änderungen an Ihrer App oder Ihrem Projekt vornehmen.
Pub/Sub ist ein Dienst zur Nachrichtenweitergabe, mit dem andere Dienste Nachrichten – in der Regel in Form von JSON-Daten – auf asynchrone Weise über Kanäle, die als Pub/Sub-Themen bezeichnet werden. Sie können autorisierte Nutzer wie Cloud Functions, um sich Nachrichten zu diesen Themen anzuhören und angemessen auf die Daten reagieren.
Hinweis: Pub/Sub-Benachrichtigungen für die Abrechnung werden etwa einmal pro 20 Minuten unabhängig davon, ob sich Ihre Abrechnungsnutzung geändert hat. zustandslos (d. h., sie liefern keinen Kontext zu ihren Vorgängen). Wenn möchten Sie ungewöhnliche Anstiege der Ausgaben im Laufe der Zeit im Auge behalten Ihre Ausgaben für den vorherigen Zyklus erhöhen, müssen Sie diese bisherigen Daten selbst mit einer Datenbank wie Cloud Firestore oder dem Realtime Database.
Pub/Sub Themen werden mit Cloud Functions verwendet
Ein Thema für deine Abrechnungsdaten Pub/Sub kannst du auf der das mit Ihrem Firebase-Projekt verknüpfte Budget in der Google Cloud-Konsole (unter Abrechnung > Budgets und Benachrichtigungen, dann klicken Sie auf das Kästchen für Verknüpfen Sie dieses Budget mit einem Pub/Sub-Thema. Dadurch wird ein Pub/Sub Thema, das du dir später anhören kannst. Eine ausführliche Anleitung finden Sie unter umfassende Dokumentation.
Nachdem Sie das Abrechnungsthema „Pub/Sub“ erstellt haben, können Sie Folgendes schreiben: Cloud Functions-Funktion, die dieses Thema überwacht und entsprechend auf die Daten reagiert. Die werden als JSON-Daten gesendet und enthalten nützliche Informationen, Ihre bisherigen Ausgaben, Ihr Budget und das Startdatum der aktuellen Abrechnungszeitraum.
In der Google Cloud-Dokumentation findest du alle Einzelheiten dazu, wie du diese Daten erhältst. mit einer Cloud Functions-Funktion. Wenn Sie jedoch Cloud Functions for Firebase für Ihre Funktionen bereitzustellen, ist der allgemeine Vorgang etwas einfacher (siehe in der Firebase-Dokumentation). Sie können sich auch dieses Video ansehen. finden Sie eine Schritt-für-Schritt-Anleitung.
Nachdem Sie diese Daten erhalten haben, gibt es verschiedene Möglichkeiten, wie Sie darauf reagieren. Sie haben unter anderem folgende Möglichkeiten:
Sie können Benachrichtigungen an Slack-Kanäle oder Discord-Kanäle senden oder SMS erhalten, wenn Ihre Ausgaben einen bestimmten Grenzwert erreichen.
Analyse Ihrer Ausgaben im Vergleich zu historischen Daten und Benachrichtigung, wenn irgendetwas ungewöhnlich erscheint,
Vornehmen von Änderungen an Ihrer App über Remote Config wenn die Abrechnungsebenen zu hoch sind
Um Ihr Firebase-Projekt vollständig zu deaktivieren, Ihren Abrechnungsdienst programmatisch entfernen aus deinem Konto