Dowiedz się więcej o danych dotyczących wydajności żądań sieciowych HTTP/S (dowolna aplikacja)

Monitorowanie wydajności wykorzystuje ślady do zbierania danych o monitorowanych procesach w Twojej aplikacji. Ślad to raport zawierający dane przechwycone między dwoma punktami w czasie w Twojej aplikacji.

W przypadku wszystkich typów aplikacji monitorowanie wydajności automatycznie zbiera dane śledzenia dla każdego żądania sieciowego wysyłanego przez aplikację, zwane śladem żądania sieciowego HTTP/S . Te ślady zbierają metryki dotyczące czasu między wysłaniem przez aplikację żądania do punktu końcowego usługi a zakończeniem odpowiedzi z tego punktu końcowego. W przypadku każdego punktu końcowego, do którego aplikacja wysyła żądanie, monitorowanie wydajności rejestruje kilka metryk:

  • Czas odpowiedzi — czas między wysłaniem żądania a otrzymaniem pełnej odpowiedzi

  • Rozmiar ładunku odpowiedzi — rozmiar w bajtach ładunku sieciowego pobranego przez aplikację

  • Rozmiar ładunku żądania — rozmiar w bajtach ładunku sieciowego przesłanego przez aplikację

  • Współczynnik sukcesu — odsetek pomyślnych odpowiedzi (kody odpowiedzi w zakresie 100–399) w porównaniu z całkowitą liczbą odpowiedzi

Dane z tych śladów można przeglądać na podkarcie Żądania sieciowe tabeli śledzenia, która znajduje się na dole pulpitu nawigacyjnego Wydajność (więcej informacji o korzystaniu z konsoli znajduje się w dalszej części tej strony).

Monitorowanie wydajności automatycznie zbiera metryki dla żądań sieciowych korzystających z następujących bibliotek sieciowych:

Szybki

  • URLSesja
  • URLPołączenie

Cel C

  • NSURLSessja
  • NSURLPołączenie

Dostosuj agregację danych żądań sieciowych

Oprócz gotowych narzędzi i agregacji danych dla żądań sieciowych, Performance Monitoring obsługuje również następujące opcje:

  • Ręczne instrumentowanie śladów żądań sieciowych: wbudowane monitorowanie obejmuje większość żądań sieciowych dla Twojej aplikacji. Jednak niektóre żądania mogą nie być zgłaszane lub możesz użyć innej biblioteki do wysyłania żądań sieciowych. W takich przypadkach można użyć interfejsu Performance Monitoring API do ręcznej instrumentacji śledzenia niestandardowych żądań sieciowych .
  • Agreguj dane według niestandardowych wzorców adresów URL: jeśli istnieją określone adresy URL, których Firebase nie przechwytuje za pomocą pochodnego automatycznego dopasowywania wzorców adresów URL, możesz utworzyć niestandardowe wzorce adresów URL , aby monitorować określony zestaw adresów URL w czasie.
  • Dostosuj sposób obliczania wskaźnika sukcesu: czasami kod błędu jest oczekiwany dla niektórych punktów końcowych interfejsu API lub jest już obsługiwany w Twojej aplikacji. W takich przypadkach możesz skonfigurować sposób obliczania wskaźnika powodzenia i dokładniej monitorować wskaźnik powodzenia wywołań sieciowych Twojej aplikacji.

Agregacja danych pod wzorcami adresów URL

Firebase Performance Monitoring automatycznie agreguje dane dla podobnych żądań sieciowych, aby pomóc Ci zrozumieć trendy w wydajności żądań sieciowych.

W przypadku każdego żądania Firebase sprawdza, czy adres URL żądania sieciowego pasuje do wzorca adresu URL. Jeśli adres URL żądania pasuje do wzorca adresu URL, Firebase automatycznie agreguje dane żądania zgodnie ze wzorcem adresu URL. Firebase wyświetla wzorce adresów URL i ich zagregowane dane na karcie Sieć w panelu Wydajność konsoli Firebase.

Co to jest wzorzec adresu URL?

Wzorzec adresu URL zawiera domenę oraz wzorzec, który może pasować do ścieżki adresu URL, na przykład: example.com/*/animals/** .

  • Wzorce adresów URL mogą zawierać następujące segmenty ścieżek:

    • zwykły tekst — dopasowuje dokładny ciąg
    • * — dopasowuje dowolny ciąg w pojedynczym segmencie ścieżki
    • ** — pasuje do dowolnego sufiksu ścieżki
  • Wzorcami adresów URL mogą być:

Na przykład: dowolne z poniższych żądań adresu URL może pasować do wzorca adresu URL example.com/*/animals/** .

  • example.com/singapore/animals
  • example.com/australia/animals/spiders
  • example.com/australia/animals/marsupials/koala.png

Domena dla wzorca adresu URL może również zawierać * jako pierwszy segment, na przykład: *.example.com/*/fruits/** .

Firebase odwzorowuje każde żądanie tylko na jeden wzorzec adresu URL . Jeśli masz skonfigurowane niestandardowe wzorce adresów URL , Firebase próbuje najpierw dopasować adresy URL żądań do tych wzorców. Jeśli Firebase nie znajdzie pasującego wzorca niestandardowego adresu URL, dopasowuje adres URL żądania do najbardziej reprezentatywnego wzorca automatycznego adresu URL . Dowiedz się więcej o automatycznych i niestandardowych wzorcach adresów URL w poniższych sekcjach.

Automatyczne wzorce adresów URL

Bez żadnej konfiguracji przez Ciebie monitorowanie wydajności próbuje odzwierciedlić najnowsze zachowanie Twojej aplikacji, dopasowując żądania aplikacji do automatycznych wzorców adresów URL .

Jak działa automatyczne dopasowywanie wzorców adresów URL?

Firebase dopasowuje każde żądanie do najbardziej reprezentatywnego wzorca automatycznego adresu URL, który uzyskał na podstawie żądań wysyłanych przez Twoją aplikację. Pamiętaj jednak, że Firebase próbuje najpierw dopasować adresy URL żądań do dowolnych skonfigurowanych niestandardowych wzorców adresów URL .

Poniżej znajduje się podstawowy przykład tego, jak Firebase próbuje dopasować żądania do najbardziej reprezentatywnego wzorca automatycznego adresu URL dla Twojej aplikacji.

  1. Twoja aplikacja wysyła wiele żądań do adresów URL, takich jak:

    • example.com/germany/animals/bears
    • example.com/germany/animals/birds
    • example.com/germany/cars

    Firebase określa, że example.com/germany/** jest typowym wzorcem żądania dla Twojej aplikacji i dodaje go jako automatyczny wzorzec adresu URL w Twoim projekcie.

    W przypadku nowych pasujących żądań do tego wzorca adresu URL Firebase agreguje dane żądań zgodnie z automatycznym wzorcem adresu URL example.com/germany/** .

  2. Po tygodniu większość żądań Twojej aplikacji trafia na example.com/germany/animals/bears i example.com/germany/animals/birds . Tak więc Firebase wyprowadza bardziej reprezentatywny wzorzec adresu URL example.com/germany/animals/** .

    W przypadku nowych pasujących żądań do tego nowego wzorca adresu URL Firebase agreguje dane żądań tylko w ramach nowego wzorca adresu URL. Firebase nadal agreguje dane dla żądań kierowanych do example.com/germany/cars pod example.com/germany/** .

  3. Jednak w ciągu następnych kilku tygodni liczba żądań Twojej aplikacji w example.com/germany/animals/bears i example.com/germany/animals/birds znacznie się zmniejszy. Firebase stwierdza, że example.com/germany/animals/** nie jest reprezentatywne dla ostatniego sposobu użytkowania Twojej aplikacji, więc Firebase zaczyna dopasowywać te dwa żądania z powrotem do example.com/germany/** .

    Firebase nie agreguje żadnych dalszych danych żądań pod example.com/germany/animals/** , ponieważ nie jest to już najbardziej reprezentatywny wzorzec automatycznego adresu URL.

Ponieważ automatyczne dopasowywanie wzorców adresów URL jest dynamiczne, pamiętaj o następujących kwestiach:

  • Nowe wzorce adresów URL nie mają wpływu na dopasowania i zagregowane dane z poprzednich żądań. Firebase nie agreguje z mocą wsteczną danych żądań.

  • Nowe wzorce adresów URL mają wpływ tylko na przyszłe żądania. Firebase odwzorowuje każde nowe żądanie na najbardziej reprezentatywny automatyczny wzorzec adresu URL. Pamiętaj jednak, że Firebase próbuje najpierw dopasować adresy URL żądań do dowolnych skonfigurowanych niestandardowych wzorców adresów URL .

Zobacz automatyczne wzorce adresów URL i ich dane

Firebase wyświetla wszystkie wzorce adresów URL i ich zagregowane dane na podkarcie Żądania sieciowe tabeli śledzenia, która znajduje się na dole pulpitu nawigacyjnego Wydajność konsoli Firebase.

Możesz zobaczyć wzorce adresów URL z etykietą Bez kategorii . Są to „szerokie” automatyczne wzorce adresów URL, na podstawie których Firebase może agregować dane dla żądań, które nie pasują do żadnego bardziej konkretnego wzorca adresu URL.

Po zakończeniu okresu przechowywania danych zagregowanych według wzorca adresu URL Firebase usuwa te dane ze wzorca adresu URL. Jeśli wszystkie dane zagregowane w ramach automatycznego wzorca adresu URL wygasną, Firebase usunie ten wzorzec adresu URL z konsoli Firebase.

Niestandardowe wzorce adresów URL

Możesz tworzyć niestandardowe wzorce adresów URL , aby monitorować określone wzorce adresów URL, których Firebase nie przechwytuje za pomocą pochodnego automatycznego dopasowywania wzorców adresów URL . Możesz na przykład użyć niestandardowego wzorca adresu URL, aby rozwiązać problem z określonym adresem URL lub monitorować określony zestaw adresów URL w czasie.

Odwiedź stronę Tworzenie niestandardowych wzorców adresów URL, aby dowiedzieć się więcej.

Śledź, przeglądaj i filtruj dane dotyczące wydajności

Aby wyświetlać dane o wydajności w czasie rzeczywistym, upewnij się, że Twoja aplikacja korzysta z wersji Performance Monitoring SDK, która jest zgodna z przetwarzaniem danych w czasie rzeczywistym. Dowiedz się więcej o danych o wydajności w czasie rzeczywistym .

Śledź określone metryki na swoim pulpicie nawigacyjnym

Aby dowiedzieć się, jak kształtują się Twoje kluczowe dane, dodaj je do swojej tablicy wskaźników u góry panelu wydajności . Możesz szybko zidentyfikować regresje, obserwując zmiany z tygodnia na tydzień lub sprawdzając, czy ostatnie zmiany w kodzie poprawiają wydajność.

obraz tablicy metryk w panelu Firebase Performance Monitoring

Aby dodać dane do tablicy metryk, wykonaj następujące kroki:

  1. Przejdź do pulpitu wydajności w konsoli Firebase.
  2. Kliknij pustą kartę metryki, a następnie wybierz istniejącą metrykę, aby dodać ją do swojej tablicy.
  3. Kliknij na wypełnionej karcie metryki, aby uzyskać więcej opcji, na przykład zastąpienie lub usunięcie metryki.

Tablica metryk pokazuje zebrane dane metryk w czasie, zarówno w formie graficznej, jak i liczbowej zmiany procentowej.

Dowiedz się więcej o korzystaniu z pulpitu nawigacyjnego .

Zobacz ślady i ich dane

Aby wyświetlić ślady, przejdź do pulpitu wydajności w konsoli Firebase, przewiń w dół do tabeli śladów, a następnie kliknij odpowiednią kartę podrzędną. W tabeli przedstawiono niektóre najważniejsze metryki dla każdego śladu, a nawet można posortować listę według zmiany procentowej dla określonej metryki.

Monitorowanie wydajności udostępnia stronę rozwiązywania problemów w konsoli Firebase, która podkreśla zmiany wskaźników, ułatwiając szybkie rozwiązywanie problemów i minimalizowanie wpływu problemów z wydajnością na aplikacje i użytkowników. Możesz użyć strony rozwiązywania problemów, gdy dowiesz się o potencjalnych problemach z wydajnością, na przykład w następujących scenariuszach:

  • Wybierasz odpowiednie dane na pulpicie nawigacyjnym i zauważasz dużą deltę.
  • W tabeli śladów sortujesz, aby wyświetlić największe delty u góry, i widzisz znaczną zmianę procentową.
  • Otrzymasz alert e-mail z powiadomieniem o problemie z wydajnością.

Dostęp do strony rozwiązywania problemów można uzyskać w następujący sposób:

  • Na pulpicie nawigacyjnym metryki kliknij przycisk Wyświetl szczegóły metryki .
  • Na dowolnej karcie metrycznej wybierz => Wyświetl szczegóły . Strona rozwiązywania problemów wyświetla informacje o wybranych danych.
  • W tabeli śledzenia kliknij nazwę śledzenia lub dowolną wartość metryki w wierszu powiązanym z tym śladem.
  • W e-mailu z alertem kliknij Zbadaj teraz .

Po kliknięciu nazwy śledzenia w tabeli śledzenia można przejść do interesujących metryk. Kliknij przycisk filtr , aby przefiltrować dane według atrybutu, na przykład:

obraz danych Firebase Performance Monitoring filtrowanych według atrybutu
  • Filtruj według wersji aplikacji, aby wyświetlić dane o poprzedniej lub najnowszej wersji
  • Filtruj według urządzenia , aby dowiedzieć się, jak starsze urządzenia obsługują Twoją aplikację
  • Filtruj według kraju , aby upewnić się, że lokalizacja Twojej bazy danych nie ma wpływu na określony region

Dowiedz się więcej o przeglądaniu danych dla swoich śladów .

Następne kroki

  • Dowiedz się więcej o używaniu atrybutów do sprawdzania danych o wydajności.

  • Dowiedz się więcej o śledzeniu problemów z wydajnością w konsoli Firebase.

  • Skonfiguruj alerty dotyczące żądań sieciowych, które obniżają wydajność Twojej aplikacji. Na przykład możesz skonfigurować alert e-mail dla swojego zespołu, jeśli czas odpowiedzi dla określonego wzorca adresu URL przekroczy ustawiony próg.

  • Przeglądaj szczegółowe raporty sesji użytkowników , w których możesz zobaczyć określony ślad w kontekście osi czasu innych śladów zebranych podczas tej samej sesji.