Skuteczność aplikacji Firebase Realtime Database możesz sprawdzać na kilka sposobów i w ten sposób wykrywać potencjalne problemy. Sprawdzanie przepustowości i obciążenia przychodzącego i wychodzącego aplikacji może też pomóc Ci oszacować wysokość rachunku. Jeśli coś wydaje Ci się nie tak, możesz uzyskać jasny obraz działania bazy danych, co może być pomocne w rozwiązywaniu problemów.
Ta strona dotyczy monitorowania skuteczności Realtime Database. Informacje o monitorowaniu wykorzystania znajdziesz w artykule Monitorowanie wykorzystania bazy danych.
Korzystanie z narzędzi do monitorowania Realtime Database
Dane o skuteczności Realtime Database możesz zbierać za pomocą kilku różnych narzędzi, w zależności od potrzebnej szczegółowości.
Używanie narzędzia do profilowania Realtime Database
Narzędzie do profilowania Realtime Database zapewnia w czasie rzeczywistym przegląd operacji odczytu/zapisu w Twojej bazie danych. Raport zawiera informacje o szybkości i rozmiarze ładunku każdej operacji oraz o zapytaniach nieprzetworzonych. Nie zawiera on jednak informacji historycznych ani żadnych statystyk dotyczących kosztów połączenia i nie powinien być używany do szacowania kosztów rozliczeniowych.
Więcej informacji o używaniu narzędzia do profilowania znajdziesz w artykule Profilowanie bazy danych.
Korzystanie z konsoli Firebase
Karta Korzystanie w Firebase konsoli zawiera informacje o jednoczesnych połączeniach z bazą danych, ilości przechowywanych danych, przepustowości wychodzącej (w tym narzutu protokołu i szyfrowania) oraz obciążeniu bazy danych w interwałach 1-minutowych. Karta Użycie zapewnia dokładniejszy wgląd w ogólną wydajność bazy danych, ale może się okazać, że nie będzie można przejść do wystarczająco szczegółowego poziomu, aby rozwiązać potencjalne problemy z wydajnością.
Użyj konta Cloud Monitoring
Dzięki Cloud Monitoring z Google Cloud możesz używać Eksploratora danych, aby wyświetlać poszczególne dane o skuteczności, lub tworzyć różne panele z wykresami, które pokazują różne kombinacje danych o skuteczności na przestrzeni czasu. Integracja Realtime Database z Cloud Monitoring zapewnia najwyższy poziom szczegółowości.
Instrukcje konfigurowania Cloud Monitoring znajdziesz w artykule Monitorowanie wykorzystania bazy danych.
W następnych sekcjach znajdziesz wskazówki dotyczące korzystania z określonych Cloud Monitoring danych, które pomogą Ci wykryć problemy ze skutecznością.
Sprawdzanie skuteczności w Cloud Monitoring
Jeśli masz problemy z wydajnością, w tym z dostępnością lub opóźnieniem, możesz użyć Cloud Monitoring do monitorowania tych danych.
Pamiętaj, że wszystkie nazwy typów danych mają przedrostek firebasedatabase.googleapis.com/
.
Nazwa wskaźnika | Opis |
---|---|
Obciążenie bazy danych |
|
Sieć wyłączona z powodu przekroczenia limitu |
|
Wyłączenie miejsca na dane w przypadku przekroczenia limitu |
|
Łącz dane na wykresach w panelu, aby uzyskiwać przydatne statystyki i przegląd. Wypróbuj na przykład te kombinacje:
- Operacje: korzystaj z danych
io/database_load
, aby sprawdzić, jaka część całkowitego obciążenia bazy danych jest wykorzystywana przez dany typ operacji. Aby rozwiązać problemy z różnymi typami operacji, należy utworzyć grupyio/database_load
według typu. - Miejsce na dane: użyj funkcji
storage/limit
istorage/total_bytes
, aby monitorować wykorzystanie miejsca na dane w odniesieniu do limitów Realtime Database. Możesz też dodaćstorage/disabled_for_overages
, aby sprawdzić, czy Twoja aplikacja była niedostępna z powodu przekroczenia limitu miejsca na dane. - Nakład SSL: użyj
network/https_requests_count
, aby monitorować liczbę otrzymanych przez bazę danych próśb o połączenie SSL, a za pomocą filtrareused_ssl_session
wyodrębnij te prośby, które korzystały z istniejącego biletu sesji SSL. Możesz to mierzyć za pomocą wartościnetwork/sent_bytes_count
inetwork/sent_payload_and_protocol_bytes_count
, aby sprawdzać, czy aplikacja efektywnie korzysta z biletów sesji SSL.
Możesz też skonfigurować alerty za pomocą Cloud Monitoring i otrzymywać powiadomienia na podstawie danych Realtime Database.
Możesz na przykład wybrać, aby otrzymywać powiadomienie, gdy io/database_load
zbliża się do określonego progu.
Zobacz pełną listę danych Realtime Database dostępnych w usłudze Cloud Monitoring.
Typy obciążenia bazy danych
Wskaźnik io/database_load
zawiera też etykietę wskazującą, jaki typ operacji spowodował obciążenie. Możliwe typy zmierzonych operacji:
admin
: operacje administracyjne, takie jak ustawianie reguł i odczytywanie metadanych projektu.auth
: weryfikowanie uwierzytelniania z kont usługi lub Uwierzytelniania Firebase w przypadku pojedynczego klienta.client_management
: obsługa dodawania i usuwania równoczesnych połączeń, co obejmuje wykonywanie operacji odłączania podczas usuwania.get_shallow
: pobieranie danych z zapytania REST GET z użyciem parametrushallow=true
.get
: obsługa operacji REST GET.listen
: pobieranie danych początkowych operacjion
ionce
z połączonych klientów.on_disconnect
: rejestrowanie operacji odłączania klientów.put
: obsługa operacjiset
ze strony klientów lub operacji REST PUT.transaction
: wykonywanie transakcji z warunkowych żądań REST lub operacjitransaction
z klienta.update
: obsługa operacjiupdate
lub żądań REST PATCH.
Monitorowanie reguł zabezpieczeń w Cloud Monitoring
Możesz też analizować ocenę reguł zabezpieczeń. Pamiętaj, że wszystkie nazwy typów danych mają przedrostek firebasedatabase.googleapis.com/
.
Nazwa wskaźnika | Opis |
---|---|
Oceny reguł | rules/evaluation_count . Liczba oceny reguł bazy danych w czasie rzeczywistym wykonanych w odpowiedzi na żądania zapisu lub odczytu. Dane te możesz podzielić według wyniku żądania (ZEZWOLENIE, ODMOWIENIE lub BŁĄD). |
W razie potrzeby dostosuj wykres Cloud Monitoring do oceny reguł, na przykład filtrując według konkretnych wyników oceny: ALLOW (ZEZWOLENIE), DENY (ODRZUCANIE) lub ERROR (BŁĄD). Konfigurowanie i dostosowywanie wykresów omawiamy w artykule Monitorowanie użycia bazy danych.
Zobacz pełną listę danych Realtime Database dostępnych w usłudze Cloud Monitoring.