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 dzienniki pochodzą z CDN automatycznie udostępnianego przez Firebase, więc każde żądanie wysłane do Twojej witryny i powiązane z nim dane są rejestrowane.
Oto kilka czynności, które możesz wykonywać za pomocą plików dziennika Cloud Logging. Aby uzyskać szczegółowe informacje, zapoznaj się z poszczególnymi sekcjami tej strony.
Więcej informacji o swojej witrynie – dowiedz się, skąd i kiedy pochodzą wizyty w Twojej witrynie, jakie są stany odpowiedzi Twojej witryny, jak długo trwa przetwarzanie żądań użytkowników i inne informacje.
Filtrowanie logów za pomocą zapytań – korzystaj z danych zbieranych automatycznie, aby filtrować i wykreślać dane powiązane z każdą prośbą lub witryną.
Używanie wskaźników opartych na logach – tworzenie wykresów Cloud Monitoring i zasad tworzenia alertów na podstawie wstępnie zdefiniowanych wskaźników systemowych lub zdefiniowanych przez użytkownika wskaźników.
Eksportowanie logów do innych narzędzi Google Cloud – używaj danych z logów w innych narzędziach (takich jak BigQuery i Data Studio), aby przeprowadzać bardziej zaawansowane analizy i korelacje.
Jeśli w projekcie masz wiele witryn Hosting, możesz wybrać, z których witryn Hosting mają być eksportowane dzienniki. Następnie możesz filtrować dane z dzienników według Hosting witryny, a nawet domeny. Wybierając konkretne Hostingwitryny, z których mają być eksportowane dzienniki, możesz też kontrolować ilość danych przetwarzanych na potrzeby projektu.
Połącz się z Cloud Logging i monitoruj wykorzystanie danych
Łączenie z Cloud Logging i eksportowanie logów żądań sieciowych
W konsoli Firebase kliknij Połącz na Cloud Loggingkarcie integracji.
Aby połączyć lub rozłączyć Cloud Logging, musisz mieć uprawnienia związane z jedną z tych ról: Właściciel lub Edytor projektu lub Administrator Firebase Develop.
Postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby wybrać, które z Twoich witryn Hosting mają eksportować dzienniki do Cloud Logging.
Jeśli masz już co najmniej 1 aktywną witrynę Hosting, w procesie łączenia wyświetli się szacowany poziom wykorzystania danych dla logów z każdej z tych witryn.Hosting Ta wartość jest obliczana na podstawie danych z ostatnich 30 dni.
Po połączeniu z Cloud Logging dzienniki dotyczące nowych żądań wysyłanych do Twoich witryn Hosting zwykle pojawiają się w ciągu 30 minut od wysłania żądania.
Możesz też odłączyć Firebase Hosting od Cloud Logging, co spowoduje zaprzestanie eksportowania logów żądań sieci do Cloud Logging.
Monitorowanie wykorzystania danych na potrzeby dzienników
Po połączeniu z Cloud Logging możesz wyświetlić poziom wykorzystania danych w przypadku logów z witryn Hosting:
Na karcie integracji Cloud Logging w konsoli Firebase
W interfejsie Logs Viewer w konsoli Google Cloud (dane
log_bytes
)
Lepsze zrozumienie witryny
Logs Viewer w konsoli Google Cloud zawiera narzędzia do wyświetlania konkretnych dziennikó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?
Możesz wyświetlać informacje o każdym żądaniu, w tym adres IP źródła, adres referer, miasto i stan.Kiedy użytkownicy odwiedzają Twoją witrynę?
Aby sprawdzić rozkład danych w określonych przedziałach czasu, możesz skorzystać z panelu Histogram. Dzięki temu możesz uzyskać wgląd w normalne szczyty i spadki w używaniu aplikacji, a także wykryć nieoczekiwane wzrosty natężenia ruchu.Jaki jest rozkład stanów próśb użytkowników?
Możesz wyświetlić stan każdej prośby, a nawet diagnozować prośby, które otrzymują błędy. Możesz filtrować dzienniki wedługCritical
,Error
lubWarning
.Ile czasu zajmuje Twojej witrynie odpowiedź na żądanie?
Za pomocą wartościlatency
zarejestrowanej w każdym dzienniku możesz sprawdzić opóźnienie witryny w przypadku każdej prośby.Czy Twoja witryna korzysta z przechowywania treści w pamięci podręcznej?
Każdy dziennik zawiera polecacheHit
, które informuje, czy zasób witryny został szybko przesłany z pamięci podręcznej CDN usługi Hosting, czy musiał zostać przesłany z Hosting do backendu. Pomoże Ci to poprawić wydajność witryny, ponieważ wykorzystasz w pełni globalną sieć CDN Firebase. Możesz na przykład użyć tych danych, aby dostosować do nich sposób buforowania komponentów statycznych i treści dynamicznych.Jaki jest rozkład ruchu w różnych domenach?
Jeśli masz wiele domen lub witryn Hosting, możesz filtrować dzienniki według domeny lub witryny. Dzięki temu możesz sprawdzić, jak rozkłada się Twój ruch. Filtrowanie według domeny pozwala śledzić, która domena jest najczęściej odwiedzana.
Filtrowanie dzienników za pomocą zapytań
Aby dowiedzieć się, jak filtrować logi za pomocą zapytań, zapoznaj się z artykułami Przykładowe zapytania w wyświetlaczu logów i Tworzenie zapytań dotyczących logów. Tabela poniżej zawiera opis pól dostępnych w przypadku tych zapytań.
W przypadku Hosting oto kilka początkowych filtrów zapytania:
- Zasób (
resource.type
) –firebase_domain
(Firebase Hosting Domena witryny) - Nazwa pliku z logami (
logName
) –webrequests
(Firebase Hosting)
Każdy wpis w logu ma zdefiniowaną wstępnie strukturę i pola, które można przeszukiwać (patrz LogEntry). W przypadku Hosting niektóre pola są standardowe dla żądania HTTP, ale istnieją też inne wartości pól pochodzące z przetwarzania, które Hosting wykonuje w przypadku każdego żądania.
Pole | Opis |
---|---|
Firebase Hosting przechowuje w obiekcie httpRequest wpisu dziennika te pola:Te pola są zdefiniowane w specyfikacji HTTP. |
|
cacheHit |
czy Hosting CDN miała zasób odpowiedzi w pamięci podręcznej. |
latency |
Czas trwania żądania w sekundach z przyrostkiem s (np. 1.256s ).
|
protocol |
Protokół użyty do żądania (np. HTTP/1.1 , HTTP/2 , 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 |
Adres IP klienta, który wysłał żądanie |
requestMethod |
Metoda żądania (GET , POST ,
PUT itd.)
|
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 |
nie wypełnione |
status |
Stan odpowiedzi HTTP (na przykład 200 lub 404 ).
|
userAgent |
Nagłówek żądania user-agent |
Firebase Hosting przechowuje dodatkowe pola w obiekcie jsonPayload wpisu dziennika.
|
|
acceptEncoding |
(z żądania HTTP) Rodzaj kodowania treści, zwykle algorytm kompresji, obsługiwany przez klienta (na przykład gzip lub compress ).
|
billable |
czy projekt został obciążony opłatą za prośbę. |
customDomain |
czy prośba dotyczyła domeny niestandardowej. |
hostname |
Nazwa hosta, której dotyczy żądanie |
remoteIpCountry |
Kraj pochodzenia żądania |
remoteIpCity |
Miasto, z którego pochodzi żądanie |
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.
Korzystaj z wstępnie zdefiniowanych danych systemowych, które są rejestrowane automatycznie, np. liczba zdarzeń logowania, które wystąpiły w określonym przedziale czasu.
Utwórz dane zdefiniowane przez użytkownika w projekcie. Możesz zliczać liczbę wpisów w logu pasujących do danego zapytania lub śledzić określone wartości za pomocą pasujących wpisów w logu. Możesz filtrować za pomocą wyrażeń regularnych.
Użyj parametru Cloud Monitoring, aby zarejestrować liczbę wpisów w logu zawierających określone wiadomości lub wyodrębnić informacje o opóźnieniach podane w wpisach w logu. Następnie możesz używać tych danych w wykresach i zasadach tworzenia alertów.
Firebase Hosting generuje też te dane rejestrowania dotyczące Hosting: Te dane nie dotyczą konkretnego wpisu w logu, ale całej witryny Hosting.
log_bytes
: łączna liczba bajtów zużytych danych w przypadku każdej witrynyresponse_count
: łączna liczba odpowiedzi napisanych w witrynieTe dane obejmują pole stanu HTTP, dzięki czemu możesz nanosić 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:
Korzystając z funkcji Cloud Monitoring, możesz tworzyć wskaźniki oparte na logach, których możesz używać w wykresach i zasadach tworzenia alertów.
Korzystając z BigQuery, możesz wykonać te czynności:
- Użyj Studia danych, aby wygenerować panele informacyjne z danymi Hosting.
- Uruchamiaj zapytania, aby uzyskać więcej informacji o swoich żądaniach (średni rozmiar odpowiedzi, trafienia i błędy w przypadku pamięci podręcznej itp.).
- Dowiedz się, jakie adresy URL faktycznie wysyłają użytkownicy.
- Łącz dane Hosting z innymi danymi Firebase wyeksportowanymi do BigQuery i wysyłaj zapytania w nowe sposoby.