Wyświetlanie, wyszukiwanie i filtrowanie logów żądań sieciowych witryny za pomocą Cloud Logging

Możesz połączyć projekt Firebase z Cloud Logging, aby wyświetlać, wyszukiwać i filtrować dzienniki żądań sieciowych w przypadku każdej witryny Hosting. Te logi są z sieci CDN dostarczonej automatycznie przez Firebase, więc każde żądanie wysyłane do i powiązane dane żądań.

Oto niektóre czynności, które możesz wykonać z dziennikami Cloud Logging. Odwiedź każdą z sekcji na tej stronie.

Jeśli w swoim projekcie masz wiele witryn Hosting, możesz wybrać tę, Twoje witryny z Hosting będą eksportować dzienniki. Następnie możesz filtrować i wyświetlać logi według Hosting witryny, a nawet według domeny. Wybierając konkretne Hostingwitryny, z których mają być eksportowane dzienniki, możesz też kontrolować ilość danych przetwarzanych w ramach projektu.

  1. Kliknij Połącz w Cloud Logging karta integracji w konsoli Firebase.

    Aby połączyć lub odłączyć usługę Cloud Logging, musisz mieć połączone uprawnienia dowolna z tych ról: Właściciel projektu lub Edytujący lub administrator Firebase Develop.

  2. Postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby wybrać, które z witryn Hosting powinien wyeksportować dzienniki do Cloud Logging.

    Jeśli masz już co najmniej jedną aktywną witrynę Hosting, połączenie wyświetla szacowany poziom użycia danych dla logów z każdego Hosting witryn. Ta wartość została oszacowana na podstawie ostatnich 30 dni.

Po połączeniu z usługą Cloud Logging dzienniki wszystkich nowych żądań wysyłanych do Witryny Hosting zwykle pojawiają się w ciągu 30 minut od przesłania żądania podjętych działań.

Możesz też odłącz konto Firebase Hosting od Cloud Logging, co zatrzymuje eksportowanie logów żądań sieciowych do Cloud Logging

Monitorowanie użycia danych pod kątem logów

Po połączeniu z usługą Cloud Logging możesz wyświetlać poziom użycia danych przez logi z Twoich witryn w Hosting:

Lepsze zrozumienie witryny

Interfejs Logs Viewer w konsoli Google Cloud znajdziesz narzędzia do wyświetlania konkretnych logów i danych za pomocą zapytań oraz wbudowanych filtrów i paneli danych. Więcej informacji o filtrowaniu logów za pomocą zapytań znajdziesz w następnej sekcji.

  • Skąd pochodzi ruch w Twojej witrynie na szczegółowym poziomie?
    Możesz wyświetlać informacje o każdym żądaniu, m.in. adres IP źródła, adres referer, miasto i stan.

  • Kiedy użytkownicy odwiedzają Twoją witrynę?
    Za pomocą Panel histogramu aby zobaczyć rozkład według określonych przedziałów czasu. Dzięki temu możesz uzyskać wgląd w normalne szczyty i spadki korzystania z aplikacji, a także zobaczyć nieoczekiwane wzrosty natężenia ruchu.

  • Jaki jest rozkład stanów próśb użytkowników?
    Można wyświetlić stan każdego żądania, a nawet zdiagnozować żądania, które . Dzienniki możesz filtrować według wartości Critical, Error lub Warning.

  • Ile czasu zajmuje Twojej witrynie odpowiedź na żądanie?
    Możesz sprawdzić czas oczekiwania dla każdego żądania za pomocą latency przechwycony w każdym logu.

  • Czy Twoja witryna korzysta z buforowania treści?
    Każdy dziennik zawiera pole cacheHit informujące, czy zasób witryny został został szybko wyświetlony z pamięci podręcznej CDN sieci Hosting, lub jeśli musiałby do backendu Hosting. Dzięki temu możesz poprawić jak najlepiej wykorzystać globalną sieć CDN Firebase. Na przykład: mogą użyć tych danych do sprecyzowania zasobów statycznych oraz zawartości dynamicznej.

  • Jaka jest dystrybucja ruchu do różnych domen?
    Jeśli masz wiele domen lub witryn Hosting, możesz filtrować dzienniki według domeny lub witryny. Dzięki temu możesz sprawdzić natężenie ruchu rozkładany. Filtrowanie według domeny pozwala śledzić, która domena jest najczęściej odwiedzana.

Filtrowanie logów za pomocą zapytań

Aby dowiedzieć się, jak filtrować logi za pomocą zapytań, zapoznaj się z artykułem Przykładowe zapytania za pomocą przeglądarki logów oraz Tworzenie zapytań dotyczących logów. W tabeli poniżej znajdziesz pola dostępne w przypadku tych zapytań.

Oto kilka początkowych filtrów zapytania Hosting:

  • Zasób (resource.type) – firebase_domain (Firebase Hosting domena witryny)
  • Nazwa logu (logName) – webrequests (Firebase Hosting)

Każdy wpis logu ma wstępnie zdefiniowaną strukturę i pola, do których można tworzyć zapytania (patrz LogEntry). W przypadku Hosting niektóre pola są standardowe w żądaniu HTTP, ale występują inne wartości pól pochodzące z przetwarzania, które Hosting uruchamia na każdym z nich użytkownika.

Pole Opis
Firebase Hosting przechowuje te pola w funkcji Obiekt dziennika httpRequest wpisu.
Pola te są zdefiniowane w specyfikacji HTTP.
cacheHit Wskazuje, czy sieć CDN Hosting miała zasób odpowiedzi w pamięć podręczna
latency Czas trwania żądania w sekundach z przyrostkiem s (np. 1.256s).
protocol Protokół użyty w żądaniu (na przykład HTTP/1.1, HTTP/2 i websocket)
referer adres poprzedniej strony internetowej, z której nastąpiło kliknięcie linku do strony, której dotyczy bieżące żądanie (jeśli występuje);
remoteIp Źródłowy adres IP klienta dla żądania
requestMethod Metoda żądania (GET, POST, PUT itp.)
requestSize Rozmiar żądania w bajtach
requestUrl pełny adres URL żądania (np.
), https://foo.web.app/bar lub https://custom.domain.com?query=param).
responseSize Rozmiar odpowiedzi HTTP w bajtach
serverIp nie wypełniono
status Stan odpowiedzi HTTP (np. 200 lub 404).
userAgent Nagłówek klienta użytkownika żądania
Firebase Hosting przechowuje dodatkowe pola w obiekcie jsonPayload wpisu dziennika.
acceptEncoding (z żądania HTTP) Jakie kodowanie treści, zwykle obsługiwanego przez klienta algorytmu kompresji (np. gzip lub compress)
billable Wskazuje, czy za żądanie zostały naliczone opłaty za projekt.
customDomain Czy prośba dotyczyła domeny niestandardowej
hostname Nazwa hosta, na którą przesłano żądanie
remoteIpCountry kraj, z którego pochodzi żądanie;
remoteIpCity miasto, z którego wysłano prośbę;

Użyj wskaźników opartych na logach

Możesz wyświetlać i tworzyć danych opartych na logach, użyj tych danych w Cloud Monitoring do tworzenia wykresów i alertów .

  • Wykorzystanie wstępnie zdefiniowanych danych systemowych rejestrowanych automatycznie. Mogą to być np. rejestracje zdarzeń, wystąpiło w określonym przedziale czasu.

  • Utwórz wskaźników zdefiniowanych przez użytkownika do swojego projektu. Możesz policzyć wpisy logu, które pasują do danego lub śledzić konkretne wartości za pomocą pasujących wpisów logu. Ty można filtrować za pomocą wyrażeń regularnych.

  • Użyj aplikacji Cloud Monitoring, aby: rejestrowanie liczby wpisów logu zawierających konkretne wiadomości lub wyodrębnianie informacje o czasie oczekiwania zgłaszane we wpisach logu. Możesz następnie używać tych danych w: wykresów i zasad tworzenia alertów.

Firebase Hosting generuje też poniższe logowanie specyficzne dla Hosting danych. Wskaźniki te nie odnoszą się konkretnie do wpisu logu, ale raczej do z konkretnej witryny Hosting.

  • log_bytes: łączna ilość danych używanych w każdej witrynie (w bajtach)

  • response_count: łączna liczba odpowiedzi napisanych w witrynie.

    Te dane zawierają pole stanu HTTP, dzięki czemu możesz tworzyć wykresy odpowiedzi HTTP według stanu (np.).

Eksportowanie logów do innych narzędzi Google Cloud

Możesz też eksportować dzienniki witryny do innych narzędzi Google Cloud, takich jak Cloud Monitoring lub BigQuery, na przykład:

  • Korzystając z Cloud Monitoring, możesz tworzyć wskaźniki oparte na logach, których można używać w wykresach i alertach .

  • Korzystając z BigQuery, możesz wykonać te czynności:

    • Użyj Studia danych, aby wygenerować panele z danymi Hosting.
    • Uruchamiaj zapytania, aby uzyskać więcej informacji o żądaniach (średni rozmiar odpowiedzi, trafienia w pamięci podręcznej i niepowodzenia itp.).
    • Dowiedz się, o które adresy URL rzeczywiście proszą użytkownicy.
    • Połącz dane z narzędzia Hosting z innymi danymi Firebase wyeksportowanymi do BigQuery i tworzenie do nich zapytań na nowe sposoby.