Skonfiguruj zaawansowane alerty i logikę płatności

Chociaż proste wiadomości e-mail z alertami dotyczącymi budżetu są stosunkowo łatwym sposobem na otrzymywanie aktualizacji dotyczących 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 Pub/Sub o rozliczeniach wraz z odpowiednią funkcją Cloud, aby stworzyć niestandardowe zachowanie w odpowiedzi na zmiany w wydatkach

Chociaż obie te techniki wymagają więcej pracy z Twojej strony, dają Ci możliwość dokładnego kontrolowania, jakiego rodzaju alerty otrzymujesz i jak na nie reagować.

Ta strona zawiera przegląd każdego z tych podejść.

Twórz bardziej zaawansowane alerty dzięki Cloud Monitoring

Proste e-maile z alertami o budżecie informują o tym, że ogólne rozliczenia osiągnęły określone progi. Jednak możesz również chcieć wiedzieć, czy poszczególne usługi nieoczekiwanie rosną – zanim zdążą znacząco wpłynąć na Twój budżet. W przypadku bardziej zaawansowanych przypadków użycia, takich jak ten, zalecamy zapoznanie się z Cloud Monitoring, który jest 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 usługi takie jak Cloud Functions będą odpowiadać 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ń (oznacza to, że reguły zabezpieczeń Firebase mogą być nieprawidłowe).

  • Jeśli ilość zasobów używanych przez niektóre z Twoich produktów Firebase przekroczyła określony próg

Alerty utworzone za pomocą Cloud Monitoring są zwykle wysyłane szybciej niż zwykłe wiadomości e-mail z alertami dotyczącymi budżetu, które są zazwyczaj wysyłane raz dziennie. Alerty mogą przybierać formę wiadomości SMS, wiadomości z kanału Slack, powiadomień PagerDuty, webhooków i nie tylko. Te opcje umożliwiają wysyłanie alertów o wyższych i bardziej praktycznych poziomach widoczności.

Korzystanie z monitorowania w chmurze

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

W szczególności możesz przyjrzeć się zasobom, takim jak instancje Cloud Firestore, Baza danych czasu rzeczywistego lub Cloud Function. Możesz wyświetlić informacje o użyciu 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ą wykorzystania 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 odczytów dokumentu w ciągu 30 minut jest większa niż określona wartość

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

Utwórz dodatkową logikę rozliczeń

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

Na przykład możesz wysyłać alerty do kanałów Slack lub SMS-em albo wprowadzać zmiany programowe w aplikacji lub projekcie w zależności od poziomu wydatków.

Pub/Sub to usługa przekazująca wiadomości, 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 znanych jako tematy Pub/Sub. Możesz skonfigurować autoryzowane usługi, takie jak Cloud Functions, aby słuchać wiadomości w tych tematach i odpowiednio działać na danych.

Pamiętaj, że powiadomienia Pub/Sub dotyczące rozliczeń są wysyłane mniej więcej raz na 20 minut, niezależnie od zmiany sposobu rozliczania, i są one bezstanowe (co oznacza, że ​​nie zawierają kontekstu tego, co je poprzedzało). Jeśli chcesz śledzić nietypowe wzrosty wydatków w czasie lub porównywać wydatki z poprzednim cyklem, musisz samodzielnie zarządzać tymi danymi historycznymi za pomocą bazy danych, takiej jak Cloud Firestore lub Baza danych czasu rzeczywistego.

Używanie tematów Pub/Sub z Cloud Functions

Możesz skonfigurować temat Pub/Sub dla swoich danych rozliczeniowych, otwierając budżet powiązany z projektem Firebase w Google Cloud Console (w sekcji 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 możesz później posłuchać. Aby uzyskać szczegółowe instrukcje, zapoznaj się z pełną dokumentacją .

Po utworzeniu tematu rozliczeniowego Pub/Sub możesz napisać funkcję Cloud, aby wysłuchać tego tematu i odpowiednio zareagować na dane. Dane są wysyłane jako dane 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 pełne informacje o tym, jak otrzymywać te dane za pomocą funkcji Cloud. Jeśli jednak do wdrażania funkcji używasz Cloud Functions dla Firebase, ogólny proces jest nieco prostszy (zapoznaj się z dokumentacją Firebase ). Możesz również zapoznać się z tym filmem , aby zapoznać się z przykładowym przewodnikiem po tym procesie.

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