Dotyczy tylko wersji Cloud Firestore Enterprise. |
Na tej stronie opisano, jak używać Cloud Monitoring wskaźników Cloud Firestore w trybie zgodności z MongoDB do monitorowania bazy danych.
Cloud Monitoring dane Cloud Firestore w trybie zgodności z MongoDB
W kolejnych sekcjach znajdziesz omówienie danych dostępnych w przypadku Cloud Firestore w trybie zgodności z MongoDB.
Monitorowane zasoby
Monitorowany zasób w Cloud Monitoring reprezentuje logiczny lub fizyczny element, taki jak maszyna wirtualna, baza danych lub aplikacja. Monitorowane zasoby zawierają unikalny zestaw danych, które można przeglądać, raportować na panelu lub wykorzystywać do tworzenia alertów. Każdy zasób ma też zestaw etykiet zasobów, czyli par klucz-wartość, które zawierają dodatkowe informacje o zasobie. Etykiety zasobów są dostępne dla wszystkich wskaźników powiązanych z zasobem.
W przypadku interfejsu Cloud Monitoring API wydajność Cloud Firestore w trybie zgodności z MongoDB jest monitorowana za pomocą tego zasobu:
Materiały | Opis |
firestore.googleapis.com/Database | Monitorowany typ zasobu, który zawiera zestawienia dotyczące project , location i database_id . |
Dane
Pełną listę danych dotyczących Cloud Firestore znajdziesz w artykule Dane dotyczące Cloud Firestore. W sekcji poniżej znajdziesz opis niektórych dostępnych danych.
Dane środowiska wykonawczego usługi
serviceruntime
dane zawierają ogólne omówienie ruchu w projekcie. Te dane są dostępne w przypadku większości interfejsów API Google Cloud. Typ monitorowanego zasobu consumed_api
zawiera te typowe dane. Te dane są próbkowane co 30 minut, co powoduje wygładzenie danych.
Ważną etykietą zasobu dla danych serviceruntime
jest method
. Ta etykieta reprezentuje wywoływaną metodę RPC. Wywoływana metoda pakietu SDK
nie musi mieć takiej samej nazwy jak podstawowa metoda RPC. Dzieje się tak, ponieważ pakiet SDK zapewnia abstrakcję interfejsu API wysokiego poziomu. Jeśli jednak chcesz dowiedzieć się, jak Twoja aplikacja wchodzi w interakcję z Cloud Firestore, musisz poznać dane na podstawie nazwy metody RPC.
Jeśli chcesz się dowiedzieć, jaka metoda RPC jest używana w przypadku danej metody pakietu SDK, zapoznaj się z dokumentacją interfejsu API.
api/request_latencies
Wskaźnik api/request_latencies
zawiera rozkłady czasu oczekiwania we wszystkich ukończonych żądaniach.
Cloud Firestore rejestruje dane z komponentu Cloud Firestore Service. Dane o czasie oczekiwania obejmują okres od momentu otrzymania żądania przez Cloud Firestore do momentu zakończenia wysyłania odpowiedzi przez Cloud Firestore, w tym interakcje z warstwą pamięci. Z tego powodu czas oczekiwania w obie strony (RTT) między klientem a Cloud Firestoreusługą nie jest uwzględniany w tych danych.
Dane dotyczące operacji na dokumentach
Cloud Firestore zawiera liczbę odczytów, zapisów i usunięć. Dane write zawierają podział na operacje „CREATE” i „UPDATE”. Te dane są zgodne z operacjami CRUD.
Poniższe dane mogą Ci pomóc określić, czy w Twojej bazie danych przeważają operacje odczytu czy zapisu, oraz sprawdzić stosunek nowych dokumentów do usuniętych.
document/delete_ops_count
: Liczba pomyślnie usuniętych dokumentów.document/read_ops_count
: Liczba odczytów dokumentów z zapytań lub wyszukiwań.document/write_ops_count
: Liczba udanych zapisów dokumentów.
Dane rozliczeniowe
Korzystaj z tych danych, aby analizować wykorzystanie licencji. Te dane nie obejmują rozliczeń za operacje administratora (indeksowanie, importowanie, eksportowanie i usuwanie zbiorcze).
api/billable_read_units
: liczba jednostek odczytu podlegających opłacie. Użycie można podzielić według nazwy usługi i metody interfejsu API.api/billable_write_units
: Liczba jednostek zapisu podlegających opłacie. Użycie można podzielić według nazwy usługi i metody interfejsu API.document/billable_managed_delete_write_units
: liczba jednostek zapisu podlegających opłacie z usług zarządzanego usuwania, takich jak TTL.
Dane indeksu
Współczynniki zapisu indeksu można porównać z document/write_ops_count
, aby poznać rozgałęzienie indeksu.
index/write_count
: Liczba zapisów indeksu.
Dane TTL
Wskaźniki TTL w przypadku Firestore w trybie zgodności z MongoDB służą do monitorowania efektu wymuszonej zasady TTL.
document/ttl_deletion_count
: Łączna liczba dokumentów usuniętych przez usługi TTL.document/ttl_expiration_to_deletion_delays
: Czas, który upłynął od wygaśnięcia dokumentu z czasem życia do jego usunięcia.
Wyświetlanie wstępnie zdefiniowanych paneli i tworzenie paneli niestandardowych
Cloud Firestore w trybie zgodności z MongoDB obsługuje wstępnie zdefiniowane panele, które korzystają z danych Cloud Monitoring. Możesz też tworzyć panele niestandardowe.
Wyświetlanie danych o korzystaniu z bazy danych
Otwórz panele wykorzystania w konsoli Google Cloud, aby wyświetlić odczyty, zapisy i usunięcia dokumentów w czasie.
Kontrola dostępu
Do wyświetlania paneli wykorzystania wymagane jest uprawnienie monitoring.timeSeries.list
Identity and Access Management (IAM).
To uprawnienie jest przyznawane w ramach ról Właściciel projektu, Edytujący i Wyświetlający. Możesz też przyznać to uprawnienie za pomocą Cloud Monitoringroli lub roli niestandardowej.
Panel wykorzystania bazy danych
Aby wyświetlić dane o wykorzystaniu bazy danych Cloud Firestore w trybie zgodności z MongoDB, wykonaj te czynności:
W konsoli Google Cloud otwórz stronę Bazy danych.
Na liście baz danych wybierz odpowiednią bazę danych.
W menu nawigacyjnym kliknij Użycie.
Panel użytkowania i raporty rozliczeniowe
Panele wykorzystania Cloud Firestore w konsoli podają oszacowanie wykorzystania. Pomagają zidentyfikować gwałtowne skoki wykorzystania. Nie jest to jednak dokładny widok rozliczonych operacji. Rozliczane wykorzystanie jest prawdopodobnie wyższe. Aby monitorować rozliczenia, zapoznaj się z danymi rozliczeniowymi.
We wszystkich przypadkach rozbieżności raport rozliczeniowy ma pierwszeństwo przed panelem wykorzystania.
Operacje importowania i eksportowania powodują rozbieżności między panelem wykorzystania a rozliczonym wykorzystaniem. Odczyty i zapisy wykonywane przez te operacje nie są widoczne w panelu wykorzystania.
Wyświetlanie wskaźników wydajności bazy danych
Strona Monitoring w sekcji Cloud Firestore konsoli Google Cloud zawiera predefiniowane panele monitorowania, takie jak Opóźnienia żądań (P50 i P99), Kody odpowiedzi i Statystyki zapytań (P50). Możesz też utworzyć maksymalnie 1 panel niestandardowy. Aby otworzyć stronę Monitorowanie bazy danych, wykonaj te czynności:
W konsoli Google Cloud otwórz stronę Cloud Firestore Bazy danych.
Wybierz bazę danych z listy.
W menu nawigacyjnym kliknij Monitorowanie, aby otworzyć panel.
Tworzenie paneli niestandardowych Cloud Monitoring
W Cloud Monitoring niestandardowe panele umożliwiają wyświetlanie istotnych dla Ciebie informacji w uporządkowany sposób. Możesz na przykład utworzyć panel, aby wyświetlać dane o skuteczności i zasady alertów dotyczące projektu w środowisku produkcyjnym.
Więcej informacji o konfigurowaniu panelu niestandardowego znajdziesz w artykułach Zarządzanie panelem niestandardowym i Dodawanie widżetów do panelu.
Przygotowanie zasad tworzenia alertów
W Cloud Monitoring możesz tworzyć alerty, które będą Cię powiadamiać o zmianach w warunkach danych. Dzięki tym alertom możesz otrzymywać powiadomienia o potencjalnych problemach, zanim wpłyną one na użytkowników.
Więcej informacji o tworzeniu alertów znajdziesz w artykule Tworzenie zasad tworzenia alertów na podstawie progu wskaźnika.
Rozważmy ten przykład, w którym tworzymy zasadę tworzenia alertów o opóźnieniu. Zasada tworzenia alertów sprawdza opóźnienie p99 w 5-minutowym okresie obserwacji. Jeśli opóźnienie p99 utrzymuje się powyżej 250 ms przez 5 minut, alert zostanie wywołany.
Konsola
W konsoli Google Cloud otwórz stronę Monitorowanie, a następnie wybierz notifications Alerty.
Kliknij Utwórz zasadę.
Wybierz dane Opóźnienia w odpowiedziach na żądania z zasobu Wykorzystany interfejs API.
Dodaj filtr usługi
firestore.googleapis.com
w przypadku standardowych baz danych Cloud Firestore.Aby skonfigurować aktywator, kliknij Dalej.
Wybierz Typy warunków jako Próg.
Warunek progu jest ustawiony na wartość progową 250 ms. Alert jest wywoływany, gdy wartość czasu oczekiwania (99 centyl) pozostaje taka sama przez cały okres okna ruchomego (5 minut).
Ustaw Wartość progu na 250.
Aby skonfigurować powiadomienia, kliknij Dalej.
Ustaw nazwę zasady tworzenia alertów i kliknij Dalej.
Sprawdź konfiguracje alertów i kliknij Utwórz zasadę.
MQL
Tę samą zasadę tworzenia alertów dotyczących czasu oczekiwania możesz wdrożyć za pomocą zapytania w języku zapytań usługi Monitoring (MQL). Więcej przykładów użycia MQL znajdziesz w artykule Przykładowe zapytania MQL.
fetch consumed_api
| metric 'serviceruntime.googleapis.com/api/request_latencies'
| filter (resource.service == 'firestore.googleapis.com')
| group_by 5m,
[value_request_latencies_percentile:
percentile(value.request_latencies, 99)]
| every 5m
| condition val() > 0.25 's'