Przeglądaj, przeszukuj i filtruj dzienniki żądań internetowych swojej witryny za pomocą Cloud Logging

Możesz połączyć swój projekt Firebase z Cloud Logging, aby przeglądać, przeszukiwać i filtrować dzienniki żądań internetowych dla każdej witryny hostingowej. Te dzienniki pochodzą z sieci CDN, która jest automatycznie dostarczana przez Firebase, więc rejestrowane jest każde żądanie skierowane do Twojej witryny i powiązane dane żądania.

Oto kilka rzeczy, które możesz zrobić z dziennikami Cloud Logging. Odwiedź każdą sekcję tej strony, aby poznać szczegóły.

Jeśli w projekcie masz wiele witryn hostingowych, możesz wybrać, która z witryn hostingowych będzie eksportować logi. Następnie możesz filtrować i przeglądać dane dzienników według witryny hostingowej, a nawet domeny. Wybierając konkretne serwisy hostingowe do eksportowania logów, możesz także kontrolować ilość danych przetwarzanych w ramach Twojego projektu.

  1. Kliknij Link na karcie integracji Cloud Logging w konsoli Firebase.

    Aby połączyć lub odłączyć Cloud Logging, potrzebujesz uprawnień przypisanych do dowolnej z następujących ról: właściciel projektu lub redaktor albo administrator Firebase Develop .

  2. Postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby wybrać, która z witryn hostingowych ma eksportować logi do Cloud Logging.

    Jeśli masz już jedną lub więcej aktywnych witryn hostingowych, proces łączenia wyświetla szacowany poziom wykorzystania danych dla dzienników z każdej witryny hostingowej. Wartość ta jest szacowana na podstawie ostatnich 30 dni.

Po połączeniu z Cloud Logging dzienniki nowych żądań kierowanych do Twoich witryn hostingowych zwykle pojawiają się w ciągu 30 minut od złożenia żądania.

Możesz także odłączyć Hosting Firebase od Cloud Logging, co zatrzyma eksport dzienników żądań internetowych do Cloud Logging.

Monitoruj wykorzystanie danych w dziennikach

Po połączeniu z Cloud Logging możesz sprawdzić poziom wykorzystania danych w logach ze swoich witryn hostingowych:

Lepiej poznaj swoją witrynę

Interfejs przeglądarki logów w konsoli Google Cloud oferuje narzędzia umożliwiające przeglądanie określonych logów i danych za pomocą zapytań oraz wbudowanych filtrów i paneli danych. Więcej informacji na temat filtrowania logów za pomocą zapytań znajdziesz w następnej sekcji poniżej.

  • Skąd pochodzi ruch w Twojej witrynie na poziomie szczegółowym?
    Możesz wyświetlić informacje o każdym żądaniu, w tym źródłowy adres IP, stronę odsyłającą, miasto i status.

  • Kiedy użytkownicy odwiedzają Twoją witrynę?
    Możesz użyć panelu Histogram , aby zobaczyć rozkład według określonych zakresów czasu. Dzięki temu możesz uzyskać wgląd w normalne szczyty i spadki wykorzystania aplikacji, a także ujawnić wszelkie nieoczekiwane skoki ruchu.

  • Jaki jest rozkład stanu żądań użytkowników końcowych?
    Możesz przeglądać status każdego żądania, a nawet diagnozować żądania, w których występują błędy. Możesz filtrować swoje logi według Critical , Error lub Warning .

  • Jak długo Twoja witryna potrzebuje czasu, aby odpowiedzieć na żądanie?
    Możesz sprawdzić opóźnienie swojej witryny dla każdego żądania, korzystając z wartości latency zapisanej w każdym dzienniku.

  • Czy Twoja witryna korzysta z buforowania treści?
    Każdy dziennik zawiera pole cacheHit informujące, czy zasób Twojej witryny został szybko udostępniony z pamięci podręcznej CDN Hostingu, czy też musiał przejść całą podróż do zaplecza Hostingu. Może to pomóc Ci poprawić wydajność Twojej witryny poprzez maksymalne wykorzystanie globalnej sieci CDN Firebase. Możesz na przykład użyć tych danych, aby dostosować zwyczaje buforowania zasobów statycznych i treści dynamicznych .

  • Jaki jest rozkład ruchu na poszczególne domeny?
    Jeśli masz wiele domen lub witryn hostingowych, możesz filtrować dzienniki według domeny lub witryny. Dzięki temu możesz zobaczyć, jak rozkłada się ruch. Filtrując według domeny, możesz śledzić, która domena jest najczęściej odwiedzana.

Filtruj swoje logi za pomocą zapytań

Aby dowiedzieć się, jak filtrować dzienniki za pomocą zapytań, odwiedź Przykładowe zapytania przy użyciu Przeglądarki logów i Zapytań o dziennik budowy . Poniższa tabela opisuje pola dostępne dla tych zapytań.

W przypadku hostingu oto kilka początkowych filtrów zapytania:

  • Zasób ( resource.type ) — firebase_domain (domena witryny hostingowej Firebase)
  • Nazwa dziennika ( logName ) — webrequests (Hosting Firebase)

Każdy wpis dziennika ma predefiniowaną strukturę i pola, do których można wysyłać zapytania (zobacz LogEntry ). W przypadku Hostingu niektóre pola są standardem dla żądania HTTP, ale istnieją inne wartości pól, które pochodzą z przetwarzania, które Hosting uruchamia przy każdym żądaniu.

Pole Opis
Hosting Firebase przechowuje następujące pola w obiekcie httpRequest wpisu dziennika.
Pola te są zdefiniowane w specyfikacji HTTP.
cacheHit Określa, czy hosting CDN miał zasób odpowiedzi w pamięci podręcznej
latency Czas trwania żądania w sekundach z przyrostkiem s (na przykład 1.256s )
protocol Protokół używany w żądaniu (na przykład HTTP/1.1 , HTTP/2 , websocket )
referer Adres poprzedniej strony internetowej, z której nastąpiło łącze do aktualnie żądanej strony (jeśli istnieje)
remoteIp Pierwotny adres IP klienta dla żądania
requestMethod Metoda żądania ( GET , POST , PUT itp.)
requestSize Rozmiar żądania w bajtach
requestUrl Pełny adres URL żądania (na przykład
https://foo.web.app/bar lub https://custom.domain.com?query=param )
responseSize Rozmiar odpowiedzi HTTP w bajtach
serverIp niezamieszkane
status Stan odpowiedzi HTTP (na przykład 200 lub 404 )
userAgent Nagłówek User-Agent żądania
Hosting Firebase przechowuje dodatkowe pola w obiekcie jsonPayload wpisu dziennika.
acceptEncoding (z żądania HTTP) Jakie kodowanie treści, zwykle algorytm kompresji, obsługuje klient (na przykład gzip lub compress )
billable Określa, czy Twój projekt został obciążony opłatą za żądanie
customDomain Określa, czy żądanie zostało skierowane do domeny niestandardowej
hostname Nazwa hosta, względem którego wysłano żądanie
remoteIpCountry Kraj pochodzenia żądania
remoteIpCity Miasto pochodzenia żądania

Używaj metryk opartych na logach

Możesz przeglądać i tworzyć wskaźniki oparte na logach , a następnie używać ich w Cloud Monitoring do tworzenia wykresów i zasad alertów.

  • Wykorzystaj predefiniowane wskaźniki systemowe , które są automatycznie rejestrowane, takie jak liczba zdarzeń rejestrowania, które miały miejsce w określonym przedziale czasu.

  • Utwórz metryki zdefiniowane przez użytkownika dla swojego projektu. Możesz policzyć liczbę wpisów dziennika pasujących do danego zapytania lub śledzić poszczególne wartości za pomocą pasujących wpisów dziennika. Możesz filtrować za pomocą wyrażeń regularnych.

  • Użyj Cloud Monitoring , aby zarejestrować liczbę wpisów dziennika zawierających określone wiadomości lub wyodrębnić informacje o opóźnieniu zgłoszone we wpisach dziennika. Następnie możesz użyć tych metryk na wykresach i zasadach tworzenia alertów.

Hosting Firebase generuje również następujące metryki rejestrowania specyficzne dla hostingu. Metryki te nie są specyficzne dla wpisu w dzienniku, ale raczej dla konkretnej witryny hostingowej jako całości.

  • log_bytes : Całkowita liczba bajtów wykorzystania danych dla każdej witryny

  • response_count : Całkowita liczba odpowiedzi napisanych dla witryny

    Metryka ta obejmuje pole stanu HTTP, dzięki czemu można wykreślać odpowiedzi HTTP według stanu (jako przykład).

Eksportuj logi do innych narzędzi Google Cloud

Możesz także wyeksportować logi swojej witryny do innych narzędzi Google Cloud, takich jak Cloud Monitoring lub BigQuery, na przykład:

  • Korzystając z Cloud Monitoring , możesz tworzyć metryki oparte na logach, których możesz używać na wykresach i w zasadach alertów.

  • Korzystając z BigQuery , możesz wykonać dowolną z następujących czynności:

    • Użyj Data Studio, aby wygenerować dashboardy swoich danych Hostingowych.
    • Uruchamiaj zapytania, aby uzyskać lepszy wgląd w swoje żądania (średni rozmiar odpowiedzi, trafienia w pamięci podręcznej vs chybienia itp.).
    • Dowiedz się, jakich adresów URL faktycznie żądają Twoi użytkownicy.
    • Połącz swoje dane z Hostingu z innymi danymi Firebase wyeksportowanymi do BigQuery i wysyłaj do nich zapytania na nowe sposoby.