Istnieje kilka różnych sposobów monitorowania wydajności Bazy danych czasu rzeczywistego Firebase i wykrywania potencjalnych problemów w aplikacji. Spojrzenie na przychodzącą i wychodzącą przepustowość oraz obciążenie Twojej aplikacji może również dać wyobrażenie o tym, czego możesz się spodziewać na rachunku. Ponadto, jeśli coś wydaje się nie tak, uzyskanie jasnego obrazu operacji bazy danych może być pomocnym narzędziem do rozwiązywania problemów.
Na tej stronie omówiono monitorowanie wydajności bazy danych czasu rzeczywistego. Aby uzyskać informacje na temat monitorowania użycia, zobacz Monitorowanie użycia bazy danych .
Korzystaj z narzędzi do monitorowania bazy danych w czasie rzeczywistym
Możesz zbierać dane o wydajności Bazy danych czasu rzeczywistego za pomocą kilku różnych narzędzi, w zależności od wymaganego poziomu szczegółowości.
Użyj narzędzia do profilowania bazy danych czasu rzeczywistego
Narzędzie do profilowania bazy danych w czasie rzeczywistym zapewnia przegląd operacji odczytu/zapisu w bazie danych w czasie rzeczywistym. Raport zawiera informacje o szybkości i wielkości ładunku każdej operacji, oprócz nieindeksowanych zapytań. Nie obejmuje ona jednak informacji historycznych ani żadnych statystyk dotyczących narzutu na połączenie i nie powinna być używana do szacowania kosztów rozliczeniowych .
Aby dowiedzieć się więcej o korzystaniu z narzędzia profilującego, zobacz Profilowanie bazy danych .
Użyj konsoli Firebase
Karta Użycie w konsoli Firebase zawiera informacje o równoczesnych połączeniach z bazą danych, ilości przechowywanych danych, przepustowości wychodzącej (w tym narzutu na protokół i szyfrowanie) oraz obciążeniu bazy danych w odstępach 1-minutowych. Chociaż karta Użycie zapewnia dokładniejszy przegląd ogólnej wydajności bazy danych, możesz nie być w stanie przeanalizować wystarczająco dużo, aby rozwiązać potencjalne problemy z wydajnością.
Użyj monitorowania w chmurze
Dzięki usłudze Cloud Monitoring firmy Google Cloud możesz używać Eksploratora metryk do przeglądania poszczególnych metryk wydajności lub tworzenia różnych pulpitów nawigacyjnych z wykresami, które przedstawiają różne kombinacje metryk wydajności w czasie. Integracja Realtime Database z Cloud Monitoring oferuje najgłębszy poziom szczegółowości.
Kroki konfigurowania usługi Cloud Monitoring opisano w temacie Monitorowanie użycia bazy danych .
Zapoznaj się z poniższymi sekcjami, aby uzyskać wskazówki dotyczące używania określonych metryk Cloud Monitoring do wykrywania problemów z wydajnością.
Monitoruj wydajność w Cloud Monitoring
Jeśli masz problemy z wydajnością, w tym czasem działania lub opóźnieniami, możesz użyć Cloud Monitoring do monitorowania następujących metryk. Pamiętaj, że wszystkie nazwy typów metryk mają przedrostek firebasedatabase.googleapis.com/
.
Nazwa metryki | Opis |
---|---|
Ładowanie bazy danych | |
Sieć wyłączona z powodu nadwyżki | |
Pamięć wyłączona z powodu nadwyżki | |
Łącz metryki na wykresach na pulpicie nawigacyjnym, aby uzyskać przydatne informacje i przeglądy. Na przykład wypróbuj następujące kombinacje:
- Operacje: Użyj metryki
io/database_load
, aby zobaczyć, jaka część całkowitego obciążenia bazy danych jest używana przez każdy typ operacji. Pamiętaj, aby pogrupowaćio/database_load
według typu, aby rozwiązać problemy z różnymi typami operacji. - Magazyn: użyj opcji
storage/limit
istorage/total_bytes
aby monitorować wykorzystanie magazynu w odniesieniu do limitów magazynu bazy danych czasu rzeczywistego. Możesz także dodaćstorage/disabled_for_overages
aby sprawdzić, czy w aplikacji wystąpiły jakiekolwiek przestoje w wyniku przekroczenia limitów przestrzeni dyskowej. - Narzut SSL: Użyj
network/https_requests_count
, aby monitorować, ile żądań połączenia SSL otrzymała Twoja baza danych, i podziel żądania, które ponownie wykorzystały istniejący bilet sesji SSL, za pomocą filtrareused_ssl_session
. Możesz to zmierzyć w porównaniu znetwork/sent_bytes_count
inetwork/sent_payload_and_protocol_bytes_count
aby monitorować, czy Twoja aplikacja efektywnie korzysta z biletów sesji SSL.
Możesz także skonfigurować alerty za pomocą Cloud Monitoring i otrzymywać powiadomienia na podstawie metryk bazy danych czasu rzeczywistego. Na przykład możesz wybrać opcję otrzymywania powiadomienia, jeśli obciążenie io/database_load
zbliża się do określonego progu.
Zobacz pełną listę metryk Bazy danych czasu rzeczywistego dostępnych w Cloud Monitoring .
Typy ładowania bazy danych
Metryka io/database_load
zawiera również etykietę typu operacji, która spowodowała obciążenie. Poniżej przedstawiono możliwe rodzaje mierzonych operacji:
-
admin
: operacje administracyjne, takie jak ustawianie reguł i odczytywanie metadanych projektu. -
auth
: Weryfikacja uwierzytelniania z kont usług lub uwierzytelniania Firebase dla pojedynczego klienta. -
client_management
: Obsługa dodawania i usuwania jednoczesnych połączeń obejmuje uruchamianie operacji rozłączania przy usuwaniu. -
get_shallow
: Pobieranie danych z REST GET zshallow=true
. -
get
: Obsługa operacji REST GET. -
listen
: Pobieranie danych początkowych dla operacjion
” ionce
od podłączonych klientów. -
on_disconnect
: Rejestrowanie operacji rozłączania od klientów. -
put
: Obsługa operacjiset
od klientów lub operacji REST PUT. -
transaction
: Wykonywanie transakcji z warunkowych żądań REST lub operacjitransaction
od klienta. -
update
: Obsługa operacjiupdate
lub żądań REST PATCH.
Monitoruj reguły bezpieczeństwa w Cloud Monitoring
Możesz także analizować ocenę reguł bezpieczeństwa. Pamiętaj, że wszystkie nazwy typów metryk mają przedrostek firebasedatabase.googleapis.com/
.
Nazwa metryki | Opis |
---|---|
Oceny reguł | rules/evaluation_count . Liczba ocen reguł bazy danych czasu rzeczywistego wykonanych w odpowiedzi na żądania zapisu lub odczytu. Możesz rozbić tę metrykę według wyniku żądania (ZEZWÓL, ODMÓW lub BŁĄD). |
W razie potrzeby dostosuj swój wykres Cloud Monitoring pod kątem oceny reguł, na przykład filtrując według określonych wyników oceny, ZEZWÓL, ODMÓW lub BŁĄD. Konfigurowanie i dostosowywanie wykresów omówiono w Monitorowaniu użycia bazy danych .
Zobacz pełną listę metryk Bazy danych czasu rzeczywistego dostępnych w Cloud Monitoring .