E-maile z alertami dotyczącymi prostego budżetu są stosunkowo łatwe do otrzymywania aktualizacji płatności, mogą się przy tym chcesz tworzyć bardziej zaawansowane alerty z większą logiką dostosowaną do swoich potrzeb. Oto 2 możliwe podejścia:
W aplikacji Cloud Monitoring możesz tworzyć bardziej złożone i aktualne alerty
Użyj powiadomienia dotyczącego płatności Pub/Sub wraz z odpowiednim powiadomieniem w Cloud Functions pozwalającą tworzyć niestandardowe zachowania w odpowiedzi na zmiany wydatki
Obie te metody wymagają od Ciebie więcej pracy, ale dzięki nim możesz dokładnie kontrolować rodzaje otrzymywanych alertów i sposób na nie reagowania.
Na tej stronie znajdziesz omówienie każdej z tych metod.
Twórz bardziej zaawansowane alerty w usłudze Cloud Monitoring
E-maile z alertami dotyczącymi prostego budżetu powiadomią Cię o osiągnięciu ogólnej płatności pewnych progów. Być może jednak zainteresuje Państwa usług niespodziewanie wzrasta aby znacząco wpłynąć na budżet. W bardziej złożonych przypadkach użycia, takich jak ten, zalecamy zapoznanie się z narzędziem Cloud Monitoring – Google Cloud dostępnych w Twoim projekcie Firebase.
Cloud Monitoring jest przydatna 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 w przypadku Firebase i Google Cloud, ale nawet w przypadku usług zewnętrznych, takich jak AWS)
Jeśli działanie usług takich jak Cloud Functions trwa dłużej niż zwykle odpowiedzieć
Jeśli zasobnik Cloud Storage, instancja Realtime Database lub instancja Cloud Firestore odrzuca zbyt wiele żądań (co oznacza, że Firebase Security Rules może być nieprawidłowy).
Jeśli ilość zasobów zużywanych przez niektóre z Twoich usług Firebase wzrosła powyżej określonego progu
Alerty utworzone przez Cloud Monitoring są zwykle wysyłane szybciej niż proste e-maile z alertami dotyczącymi budżetu, które są zwykle wysyłane raz dziennie. Alerty mogą mieć formę SMS-ów, wiadomości na kanale Slacka, powiadomień PagerDuty, webhooków i nie tylko. Te opcje umożliwiają wysyłanie alertów o wyższej i wyższej wartości praktycznych poziomów widoczności.
Jak korzystać z aplikacji Cloud Monitoring
Aby zacząć korzystać z Cloud Monitoring, zalecamy zacząć od Metrics Explorer, który umożliwia tworzenie wykresów niestandardowych danych w obrębie projektów Firebase/Google Cloud i wizualizować ich użycie.
W szczególności możesz sprawdzić zasoby takie jak Cloud Firestore, Realtime Database lub instancje funkcji w Cloud Functions. Możesz wyświetlić informacje o użytkowaniu dotyczące tych usług (np. liczba odczytów dokumentów, wysłanych bajtów lub funkcja wywołania), które mogą mieć wpływ na płatności.
Gdy będziesz dobrze wizualizować wykorzystanie zasobów w sekcji Wskaźniki Eksploratora, zalecamy utworzenie zasad tworzenia alertów na stronie danych, na których najbardziej Ci zależy. Oto kilka przykładowych zasad tworzenia alertów:
Jeśli liczba odczytów dokumentu w ciągu 30 minut jest większa niż określona wartość
Jeśli wykorzystanie określonego zasobu (np. wywołanie funkcji) wydaje się zbyt szybki wzrost w danym okresie
Utwórz dodatkową logikę płatności
Alerty budżetowe wysyłają e-maile automatycznie, gdy budżet osiąga określone wartości progowe. Jeśli jednak chcesz otrzymywać bardziej zaawansowane alerty lub automatyczne reakcje na wzrost wydatków, możesz skonfigurować dodatkową logikę niestandardową na podstawie wiadomości Google Cloud Pub/Sub.
Można na przykład wysyłać alerty do kanałów na Slacku, przez SMS-y lub wprowadzać automatyczne zmiany w aplikacji lub projekcie w zależności od poziomu wydatków.
Pub/Sub to usługa przekazywania wiadomości, która umożliwia wysyłanie wiadomości innym usługom wiadomości – zwykle w formie danych JSON – w sposób asynchroniczny; za pomocą kanałów o nazwie Pub/Sub. Możesz skonfigurować autoryzowane takich jak Cloud Functions, aby odsłuchiwać wiadomości dotyczące tych tematów, a także będzie prawidłowo działać na danych.
Pamiętaj, że powiadomienia o płatnościach są wysyłane mniej więcej raz na Pub/Sub 20 minut od tego, czy zmienił się sposób korzystania z płatności, bezstanowy (co oznacza, że nie podano kontekstu co do tego, co je poprzedzało). Jeśli chcesz śledzić nietypowe wzrosty wydatków na przestrzeni czasu lub porównywać niż w poprzednim cyklu, należy zarządzać danymi historycznymi samodzielnie za pomocą bazy danych takiej jak Cloud Firestore lub Realtime Database.
Używanie Pub/Sub tematów z Cloud Functions
Temat Pub/Sub możesz skonfigurować dla swoich danych rozliczeniowych. Aby to zrobić, otwórz powiązany z projektem Firebase w konsoli Google Cloud (w sekcji Płatności > Budżety i alerty), a następnie kliknij pole wyboru obok Połącz temat (Pub/Sub) z tym budżetem. Spowoduje to utworzenie Pub/Sub temat, którego możesz potem posłuchać. Szczegółowe instrukcje znajdziesz w pełnej dokumentacji.
Po utworzeniu tematu płatności Pub/Sub możesz napisać funkcję w Cloud Functions, aby nasłuchiwać tego tematu i w razie potrzeby podejmować odpowiednie działania na podstawie danych. są wysyłane w postaci danych JSON i zawierają przydatne informacje, takie jak ilość dotychczasowe wydatki, kwotę budżetu i datę rozpoczęcia bieżącego cyklu rozliczeniowego.
Szczegółowe informacje o tym, jak otrzymywać te dane, znajdziesz w dokumentacji usługi Google Cloud za pomocą funkcji w Cloud Functions. Jeśli jednak używasz Cloud Functions for Firebase do do wdrożenia funkcji, ogólny proces jest nieco prostszy (zobacz dokumentacji Firebase). Aby zobaczyć przykładową prezentację tego procesu, obejrzyj ten film.
Po otrzymaniu tych danych możesz na nie odpowiedzieć. Możliwości są następujące:
Wysyłanie alertów do kanałów Slack na Discordzie lub do wysyłania SMS-ów, gdy Twoje wydatki osiągną pewnych wartości progowych.
Analizowanie wydatków w porównaniu z danymi historycznymi i powiadamianie, jeśli dzieje się coś nietypowego
Wprowadzanie zmian w aplikacji za pomocą Remote Config jeśli poziomy płatności są zbyt wysokie
Całkowite wyłączenie projektu Firebase: automatyczne usunięcie usługi rozliczeniowej, z Twojego konta