Monitorowanie aktywności w Cloud Firestore

Na tej stronie dowiesz się, jak monitorować wykorzystanie Cloud Firestore i wykrywać potencjalne problemy w aplikacji.

Panel wykorzystania

Aby wyświetlić odczyty, zapisy i usunięcia dokumentów w czasie, użyj paneli wykorzystania w konsoli Google Cloud i konsoli Firebase.

Kontrola dostępu

Panele wykorzystania wymagają uprawnienia Cloud IAM monitoring.timeSeries.list. Uprawnienie to jest przyznawane przez role właściciela projektu, edytującego i wyświetlającego. Możesz też przyznać to uprawnienie za pomocą roli Cloud Monitoring lub roli niestandardowej.

Panel wykorzystania bazy danych

Aby wyświetlić dane o wykorzystaniu bazy danych Cloud Firestore, otwórz stronę Wykorzystanie w konsoli Google Cloud.

  1. W konsoli Google Cloud otwórz stronę Bazy danych.

    Otwórz bazy danych

  2. Na liście baz danych wybierz wymaganą bazę danych.

  3. W menu nawigacyjnym kliknij Wykorzystanie.

  4. Aby wyświetlić wykorzystanie bazy danych, kliknij link w wiadomości, która pojawi się na stronie.

    W sekcji <span class=Panel wykorzystania bazy danych Cloud Firestore w konsoli Google Cloud."/>

Panel łącznego wykorzystania

Jeśli Twój projekt ma wiele Cloud Firestore baz danych, możesz wyświetlić łączne dane o wykorzystaniu w konsoli Google Cloud lub Firebase konsoli.

Konsola Google Cloud

W konsoli Google Cloud otwórz stronę Wykorzystanie projektu.

Otwórz stronę wykorzystania projektu w chmurze Google Cloud

Panel wykorzystania projektu pokazuje operacje na dokumentach w czasie w ten sposób:

W sekcji <span class=Panel wykorzystania projektu Cloud Firestore w konsoli Google Cloud."/>

Firebase konsola

Otwórz stronę wykorzystania Cloud Firestore (Firebase konsola)

W sekcji <span class=Panel wykorzystania Cloud Firestore w konsoli Firebase."/>

Panel wykorzystania i raporty rozliczeniowe

Panele wykorzystania Cloud Firestore w konsolach Firebase i Cloud podają oszacowanie wykorzystania. Pomagają zidentyfikować gwałtowne skoki wykorzystania. Nie jest to jednak dokładny widok rozliczonych operacji. Rozliczone wykorzystanie jest prawdopodobnie wyższe. We wszystkich przypadkach rozbieżności raport rozliczeniowy ma pierwszeństwo przed panelem wykorzystania.

Operacje, które powodują rozbieżności między panelem wykorzystania a rozliczonym wykorzystaniem obejmują m.in.:

  • Operacje importu i eksportu. Odczyty i zapisy wykonywane przez te operacje nie są widoczne w panelu wykorzystania.
  • Bezobsługowe operacje zapisu o charakterze jedynie weryfikacyjnym. Operacje zapisu, które tylko weryfikują istnienie lub brak dokumentu, są uwzględniane w rozliczonych operacjach odczytu, ale w panelu wykorzystania zapisu są wyświetlane odpowiednio jako `UPDATE_NOOP` i `DELETE_NOOP`.
  • Bezobsługowe operacje zapisu. Operacje, które nie powodują zmian w bazie danych, np. aktualizacja, która nie zmienia wartości pól, lub zapis w usuniętym dokumencie, mogą być wyświetlane w panelu wykorzystania jako `UPDATE_NOOP` lub `DELETE_NOOP`. Mimo że są wyświetlane jako `NOOP`, nadal są uwzględniane w rozliczonych operacjach.
  • Zwinięte operacje zapisu. W przypadkach, gdy w krótkim czasie następuje wiele zapisów w tym samym dokumencie, panel wykorzystania może zwinąć kilka zapisów i zliczyć je jako jeden. Podczas rozliczania wykorzystania każdy zapis jest nadal zliczany oddzielnie.

    Panel wykorzystania zwija też zapisy do przekształceń pól, takich jak sygnatury czasowe serwera, przyrosty liczbowe i operacje łączenia tablic. W przypadku przekształceń pól panel wykorzystania może zliczać wiele operacji jako jedną.

  • Zapytania zwracające zero wyników. Zapytania z zerową liczbą wyników generują koszt 1 operacji odczytu. To wykorzystanie jest rozliczane, ale nie pojawia się w panelu wykorzystania.
  • Operacje odczytu z wpisów indeksu. To wykorzystanie jest rozliczane, ale nie pojawia się w panelu wykorzystania. Na przykład zapytania zbiorcze są rozliczane za odczytane wpisy indeksu, ale to wykorzystanie nie pojawia się w panelu wykorzystania.

Panel wykorzystania w przypadku usunięć nie uwzględnia automatycznych operacji wygaszania wykonywanych przez zasady dotyczące czasu życia danych (TTL). Zapoznaj się z danymi TTL w Cloud Monitoring.

Wykorzystanie reguł zabezpieczeń

Konsola Firebase zawiera też panel oceny reguł zabezpieczeń Firebase, który umożliwia szybki wgląd w wywołania reguł. Wykorzystanie reguł zabezpieczeń Firebase możesz też monitorować za pomocą Cloud Monitoring. Umożliwia to uzyskanie tych samych danych oceny reguł, a także tworzenie niestandardowych paneli, analizowanie trendów i konfigurowanie alertów (np. w przypadku gwałtownego wzrostu liczby odrzuconych żądań). Pełną listę dostępnych danych znajdziesz w dokumentacji Cloud Monitoring Cloud Monitoring.

Otwórz reguły

<span class=Reguły Cloud Firestore panel monitorowania w konsoli Firebase."/>

Cloud Monitoring dane

Cloud Monitoring zbiera dane, zdarzenia i metadane z Google Cloud usług. Panel wykorzystania w konsoli Cloud Firestoreraportuje te same dane. Aby skonfigurować niestandardowe panele i alerty o wykorzystaniu, użyj Cloud Monitoring.

Cloud Monitoring obejmuje te dane Cloud Firestore:

Nazwa wskaźnika Opis
Odczyty dokumentów

Liczba udanych odczytów dokumentów. Ten wskaźnik możesz podzielić według typu odczytu: LOOKUP lub QUERY.

Te dane nie obejmują odczytów z zarządzanych operacji eksportu ani zbiorczego usuwania operacji.

Zapisy dokumentów

Liczba udanych zapisów dokumentów. Te dane możesz podzielić według typu zapisu: CREATE lub UPDATE.

Te dane nie obejmują zapisów z zarządzanych operacji importu.

Usunięcia dokumentów Liczba udanych usunięć dokumentów.
Aktywne połączenia

Liczba aktywnych połączeń z bazą danych.

Każdy aktywny pakiet SDK na urządzenia mobilne i strony internetowe utrzymuje jedno połączenie, które może być współdzielone przez wiele detektorów zrzutu. Biblioteki klienta serwera tworzą 1 połączenie na detektor zrzutu.

Detektory zrzutów

Liczba detektorów zrzutu we wszystkich aktywnych połączeniach.

Liczba usunięć według czasu życia danych

Łączna liczba dokumentów usuniętych przez zasady dotyczące czasu życia danych (TTL).

Opóźnienia między wygaśnięciem a usunięciem według czasu życia danych

Czas, który upłynął od wygaśnięcia dokumentu zgodnie z zasadami dotyczącymi czasu życia danych (TTL) do jego usunięcia.

Wykorzystanie aktualizacji w czasie rzeczywistym

Aby zmierzyć wykorzystanie aktualizacji w czasie rzeczywistym, użyj danych aktywnych połączeń i detektorów zrzutu.

Załóżmy, że użytkownik otwiera Twoją aplikację na telefonie. Aplikacja łączy się z Cloud Firestore i subskrybuje 10 zapytań. Zwiększa to dane o 1 aktywne połączenie i 10 detektorów zrzutu.

Częstotliwość próbkowania

Dane Cloud Firestore są próbkowane co minutę, ale aktualizacje mogą pojawić się w panelach dopiero po 4 minutach.

Dane dotyczące czasu oczekiwania

Dane dotyczące czasu oczekiwania backendu są dostępne w typowych Google Cloud Cloud Firestore danych.

Na przykład wykres czasu oczekiwania p50 można znaleźć w widoku eksploratora danych w konsoli Google Cloud.

Konfigurowanie panelu Cloud Monitoring

Aby wyświetlić wstępnie zdefiniowany panel lub skonfigurować panel, przeczytaj artykuł Korzystanie z panelu monitorowania.

Co dalej?