Skonfiguruj zaawansowane alerty rozliczeniowe i logikę

Chociaż proste wiadomości e-mail z alertami budżetowymi są stosunkowo łatwym sposobem otrzymywania aktualizacji rozliczeń, może się zdarzyć, że zechcesz utworzyć bardziej wyrafinowane alerty zawierające bardziej dostosowaną logikę. Oto dwa podejścia do rozważenia:

  • Użyj Cloud Monitoring, aby tworzyć bardziej wyrafinowane i aktualne alerty

  • Użyj powiadomienia rozliczeniowego Pub/Sub wraz z odpowiednią funkcją w chmurze, aby stworzyć niestandardowe zachowanie w odpowiedzi na zmiany w wydatkach

Chociaż obie te techniki wymagają więcej pracy z Twojej strony, pozwalają dokładnie kontrolować, jakie rodzaje alertów otrzymujesz i jak na nie reagować.

Na tej stronie znajdziesz przegląd każdego z tych podejść.

Twórz bardziej wyrafinowane alerty dzięki Cloud Monitoring

Proste e-maile z alertami budżetowymi informują Cię, gdy Twoje ogólne rozliczenia osiągną określone progi. Możesz jednak zainteresować się również tym, czy poszczególne usługi nieoczekiwanie rosną – zanim będą miały szansę znacząco wpłynąć na Twój budżet. W przypadku bardziej wyrafinowanych przypadków użycia, takich jak ten, zalecamy zapoznanie się z Cloud Monitoring, czyli narzędziem Google Cloud dostępnym dla Twojego projektu Firebase.

Cloud Monitoring jest przydatny w przypadku kilku różnych typów alertów:

  • Jeśli zasób, na którym opiera się Twój projekt, jest niedostępny (zarówno dla usług Firebase, jak i Google Cloud, ale nawet dla usług zewnętrznych, takich jak AWS)

  • Jeśli odpowiedź usług takich jak Cloud Functions trwa dłużej niż oczekiwano

  • Jeśli Twój zasobnik Cloud Storage, instancja bazy danych czasu rzeczywistego lub instancja Cloud Firestore odrzuca zbyt wiele żądań (wskazuje to, że Twoje reguły bezpieczeństwa Firebase mogą być nieprawidłowe).

  • Jeśli ilość zasobów wykorzystywanych przez niektóre Twoje produkty Firebase wzrosła powyżej pewnego progu

Alerty utworzone za pomocą Cloud Monitoring są zwykle wysyłane szybciej niż zwykłe e-maile z alertami budżetowymi, które zazwyczaj są wysyłane raz dziennie. Alerty mogą mieć formę wiadomości SMS, wiadomości na kanale Slack, powiadomień PagerDuty, webhooków i innych. Opcje te umożliwiają wysyłanie alertów o wyższym i bardziej praktycznym poziomie widoczności.

Korzystanie z monitorowania w chmurze

Aby rozpocząć korzystanie z Cloud Monitoring, zalecamy zacząć od Eksploratora metryk , który umożliwia tworzenie wykresów niestandardowych metryk w projekcie Firebase/Google Cloud i wizualizację ich wykorzystania.

W szczególności możesz przeglądać zasoby, takie jak Cloud Firestore, baza danych czasu rzeczywistego lub instancje Cloud Function. Możesz przeglądać informacje o użytkowaniu tych produktów (takie jak liczba odczytań dokumentów, wysłanych bajtów lub wywołań funkcji), które będą miały wpływ na Twoje rozliczenia.

Po zapoznaniu się z wizualizacją użycia zasobów w Eksploratorze metryk zalecamy utworzenie zasad alertów dotyczących metryk, na których najbardziej Ci zależy. Oto kilka przykładowych zasad dotyczących alertów:

  • Jeśli liczba odczytań dokumentów w ciągu 30 minut jest większa niż określona wartość

  • Jeśli użycie określonego zasobu (np. wywołanie funkcji) wydaje się wzrastać zbyt szybko w określonym przedziale czasowym

Utwórz dodatkową logikę rozliczeniową

Alerty budżetowe wysyłają automatycznie e-maile, gdy budżet osiągnie określone progi, ale w przypadku bardziej wyrafinowanych alertów lub programowych reakcji na wzrost wydatków możesz rozważyć skonfigurowanie dodatkowej niestandardowej logiki opartej na wiadomościach Google Cloud Pub/Sub.

Możesz na przykład wysyłać alerty do kanałów Slack lub za pośrednictwem wiadomości tekstowych albo wprowadzać programowe zmiany w aplikacji lub projekcie w zależności od poziomu wydatków.

Pub/Sub to usługa przekazywania komunikatów, która umożliwia innym usługom wysyłanie wiadomości — zwykle w postaci danych JSON — w sposób asynchroniczny za pośrednictwem kanałów zwanych tematami Pub/Sub. Możesz skonfigurować autoryzowane usługi, takie jak Cloud Functions, aby słuchać wiadomości w tych tematach i odpowiednio reagować na dane.

Należy pamiętać, że powiadomienia Pub/Sub dotyczące rozliczeń są wysyłane mniej więcej raz na 20 minut, niezależnie od zmiany sposobu korzystania z rozliczeń, i są bezstanowe (co oznacza, że ​​nie dostarczają kontekstu dotyczącego tego, co je poprzedzało). Jeśli chcesz śledzić nietypowy wzrost wydatków w czasie lub porównywać swoje wydatki z poprzednim cyklem, będziesz musiał samodzielnie zarządzać tymi danymi historycznymi, korzystając z bazy danych takiej jak Cloud Firestore lub Realtime Database.

Korzystanie z tematów Pub/Sub w Cloud Functions

Możesz skonfigurować temat Pub/Sub dla swoich danych rozliczeniowych, odwiedzając budżet powiązany z projektem Firebase w konsoli Google Cloud (w obszarze Rozliczenia > Budżety i alerty ), a następnie klikając pole wyboru Połącz temat Pub/Sub z tym budżetem . Spowoduje to utworzenie tematu Pub/Sub, którego będziesz mógł posłuchać później. Szczegółowe kroki można znaleźć w pełnej dokumentacji .

Po utworzeniu tematu rozliczeń Pub/Sub możesz napisać funkcję w chmurze, aby wysłuchać tego tematu i odpowiednio zastosować się do danych. Dane są wysyłane w formacie JSON i zawierają przydatne informacje, takie jak dotychczas wydana kwota, kwota budżetu i data rozpoczęcia bieżącego cyklu rozliczeniowego.

Dokumentacja Google Cloud zawiera szczegółowe informacje na temat otrzymywania tych danych za pomocą funkcji chmury. Jeśli jednak do wdrażania funkcji używasz Cloud Functions dla Firebase, ogólny proces jest nieco prostszy (sprawdź dokumentację Firebase ). Przykładowy opis procesu można także obejrzeć w tym filmie .

Po otrzymaniu tych danych możesz na nie zareagować na wiele różnych sposobów. Oto kilka opcji: