Możesz połączyć projekt w Firebase z Cloud Logging, aby wyświetlać, przeszukiwać i filtrować logi żądań sieciowych każdej z Twoich witryn w Hosting. Te logi pochodzą z sieci CDN, która jest automatycznie udostępniana przez Firebase, więc rejestrowane są wszystkie żądania kierowane do Twojej witryny i powiązane z nimi dane.
Oto kilka przykładów zastosowań logów Cloud Logging. Aby dowiedzieć się więcej, otwórz poszczególne sekcje tej strony.
Lepsze poznanie witryny – dowiedz się z kąd i kiedy użytkownicy odwiedzają Twoją witrynę, jakie są stany odpowiedzi witryny, jakie są opóźnienia w odpowiedziach na żądania użytkowników itp.
Filtrowanie logów za pomocą zapytań – wykorzystuj automatycznie zbierane dane do filtrowania i tworzenia wykresów danych powiązanych z każdym żądaniem lub Twoją witryną.
Korzystanie ze wskaźników opartych na logach – twórz wykresy i zasady tworzenia alertów w Cloud Monitoring na podstawie predefiniowanych wskaźników systemowych lub wskaźników zdefiniowanych przez użytkownika.
Eksportowanie logów do innych narzędzi Google Cloud – używaj danych logów w innych narzędziach (np. BigQuery i Data Studio) do bardziej zaawansowanej analizy i korelacji.
Jeśli w projekcie masz kilka witryn Hosting, możesz wybrać, które z Twoich witryn Hosting mają eksportować logi. Następnie możesz filtrować i wyświetlać dane logów według witryny Hosting, a nawet według domeny. Wybierając konkretne Hosting witryny, z których chcesz eksportować logi, możesz też kontrolować ilość danych przetwarzanych w projekcie.
Łączenie z Cloud Logging i monitorowanie wykorzystania danych
Łączenie z Cloud Logging i eksportowanie logów żądań sieciowych
W konsoli Firebase na karcie integracji Cloud Logging kliknij Połącz.
Aby połączyć lub rozłączyć Cloud Logging, musisz mieć uprawnienia zawarte w jednej z tych ról: Właściciel projektu lub Edytujący lub Administrator Firebase Develop.
Postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby wybrać, które witryny Hostingmają eksportować logi do Cloud Logging.
Jeśli masz już co najmniej 1 aktywną witrynę Hosting, w procesie łączenia wyświetli się szacowany poziom użycia danych w przypadku logów z każdej z tych Hosting witryn. Ta wartość jest szacowana na podstawie danych z ostatnich 30 dni.
Po połączeniu z Cloud Logging logi dotyczące nowych żądań kierowanych do Twoich Hosting witryn będą zwykle widoczne w ciągu 30 minut od wysłania żądania.
Możesz też rozłączyć Firebase Hosting z Cloud Logging, co spowoduje zatrzymanie eksportu logów żądań sieciowych do Cloud Logging.
Monitorowanie użycia danych na potrzeby logów
Po połączeniu z Cloud Logging możesz wyświetlić poziom użycia danych na potrzeby dzienników z Twoich witryn w Hosting:
Na karcie integracji w konsoli Firebase.Cloud Logging
W interfejsie Logs Viewer w konsoli Google Cloud (wskaźnik
log_bytes).
Lepsze poznanie witryny
Interfejs Logs Viewer w konsoli Google Cloudoferuje 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 poziomie szczegółowym?
Możesz wyświetlić informacje o każdym żądaniu, w tym źródłowy adres IP, adres strony odsyłającej, miasto i stan.Kiedy użytkownicy odwiedzają Twoją witrynę?
Za pomocą panelu Histogram możesz wyświetlić rozkład według określonych przedziałów czasu. Dzięki temu możesz poznać normalne szczyty i spadki wykorzystania aplikacji oraz wykryć nieoczekiwane skoki ruchu.Jaki jest rozkład stanu żądań użytkowników?
Możesz wyświetlić stan każdego żądania, a nawet zdiagnozować żądania, które powodują błędy. Możesz filtrować logi według wartościCritical,ErrorlubWarning.Ile czasu zajmuje Twojej witrynie odpowiedź na żądanie?
Możesz wyświetlić opóźnienie witryny w przypadku każdego żądania, korzystając z wartościlatencyzarejestrowanej w każdym logu.Czy Twoja witryna korzysta z buforowania treści?
Każdy log zawiera polecacheHit, które informuje, czy zasób witryny został szybko obsłużony z pamięci podręcznej sieci CDN Hosting, czy też musiał przejść całą drogę do backendu Hosting. Może to pomóc w zwiększeniu wydajności witryny przez maksymalne wykorzystanie globalnej sieci CDN Firebase. Na przykład możesz użyć tych danych do dostosowania sposobu buforowania zasobów statycznych i treści dynamicznych.Jaki jest rozkład ruchu w Twoich domenach?
Jeśli masz kilka domen lub Hosting witryn, możesz filtrować logi według domeny lub witryny. Umożliwia to sprawdzenie, jak rozkłada się ruch. Gdy filtrujesz według domeny, możesz śledzić, która domena jest najczęściej odwiedzana.
Filtrowanie logów za pomocą zapytań
Aby dowiedzieć się, jak filtrować logi za pomocą zapytań, przeczytaj artykuły Przykładowe zapytania w Przeglądarce logów i Tworzenie zapytań do logów. W tabeli poniżej znajdziesz opis pól dostępnych w tych zapytaniach.
Oto kilka początkowych filtrów zapytania w przypadku Hosting:
- Zasób (
resource.type) –firebase_domain(domena witryny)Firebase Hosting - Nazwa logu (
logName) –webrequests(Firebase Hosting)
Każdy wpis logu ma predefiniowaną strukturę i pola, które można przeszukiwać (patrz LogEntry). W przypadku Hosting niektóre pola są standardowe dla żądania HTTP, ale istnieją inne wartości pól pochodzące z przetwarzania, które Hosting wykonuje w przypadku każdego żądania.
| Pole | Opis |
|---|---|
Firebase Hosting przechowuje te pola w obiekcie
httpRequest wpisu w logu.Pola te są zdefiniowane w specyfikacji HTTP. |
|
cacheHit |
Informuje, czy sieć CDN Hosting miała w pamięci podręcznej zasób odpowiedzi w pamięci podręcznej. |
latency |
Czas trwania żądania w sekundach z sufiksem s (np. 1.256s)
|
protocol |
Protokół używany w żądaniu (np. HTTP/1.1,
HTTP/2, websocket).
|
referer |
Adres poprzedniej strony, z której nastąpiło przejście do aktualnie żądanej strony (jeśli jest dostępny). |
remoteIp |
Źródłowy adres IP klienta w przypadku żą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 jest wypełniane |
status |
Stan odpowiedzi HTTP (np. 200 lub
404).
|
userAgent |
Nagłówek User-Agent żądania. |
Firebase Hosting przechowuje dodatkowe pola w obiekcie
jsonPayload wpisu logu.
|
|
acceptEncoding |
(z żądania HTTP) Kodowanie treści, zwykle algorytm kompresji, obsługiwane przez klienta (np. gzip lub compress).
|
billable |
Informuje, czy za żądanie został naliczony rachunek. |
customDomain |
Informuje, czy żądanie zostało wysłane do domeny niestandardowej. |
hostname |
Nazwa hosta, do którego zostało wysłane żądanie. |
remoteIpCountry |
Kraj pochodzenia żądania. |
remoteIpCity |
Miasto pochodzenia żądania. |
Korzystanie ze wskaźników opartych na logach
Możesz wyświetlać i tworzyć wskaźniki oparte na logach, a następnie używać ich w Cloud Monitoring do tworzenia wykresów i zasad tworzenia alertów.
Wykorzystuj predefiniowane wskaźniki systemowe które są automatycznie rejestrowane, np. liczbę zdarzeń logowania, które wystąpiły w określonym przedziale czasu.
Twórz wskaźniki zdefiniowane przez użytkownika na potrzeby projektu. Możesz zliczać liczbę wpisów w logu pasujących do danego zapytania lub śledzić określone wartości w pasujących wpisach w logu. Możesz filtrować za pomocą wyrażeń regularnych.
Używaj Cloud Monitoring do rejestrowania liczby wpisów w logu zawierających określone wiadomości lub do wyodrębniania informacji o opóźnieniach podanych we wpisach w logu. Następnie możesz używać tych wskaźników na wykresach i w zasadach tworzenia alertów.
Firebase Hosting generuje też te wskaźniki logowania specyficzne dla Hosting. Te wskaźniki nie są powiązane z konkretnym wpisem logu, ale z całą Hosting witryną.
log_bytes: łączna liczba bajtów wykorzystania danych w przypadku każdej witryny.response_count: łączna liczba odpowiedzi zapisanych w witrynie.Ten wskaźnik zawiera pole stanu HTTP, dzięki czemu możesz np. tworzyć wykresy odpowiedzi HTTP według stanu.
Eksportowanie logów do innych Google Cloud narzędzi
Możesz też eksportować logi witryny do innych narzędzi Google Cloud, np. Cloud Monitoring lub BigQuery:
Za pomocą Cloud Monitoring, możesz tworzyć wskaźniki oparte na logach, których możesz używać na wykresach i w zasadach tworzenia alertów.
Za pomocą BigQuery możesz wykonać dowolną z tych czynności:
- Używaj Data Studio do generowania paneli danych Hosting.
- Uruchamiaj zapytania, aby uzyskać więcej informacji o żądaniach (średni rozmiar odpowiedzi, trafienia i nietrafienia w pamięci podręcznej itp.).
- Dowiedz się, które adresy URL są rzeczywiście żądane przez użytkowników.
- Łącz dane Hosting z innymi danymi Firebase wyeksportowanymi do BigQuery i wysyłaj do nich zapytania na nowe sposoby.