Performance Monitoring używa śladów do zbierania danych o monitorowanych procesach w aplikacji. Ślad to raport zawierający dane zarejestrowane między 2 punktami w czasie w aplikacji.
W przypadku aplikacji na urządzenia z Androidem i iOS Performance Monitoring automatycznie mierzy wydajność renderowania różnych ekranów w aplikacji. Performance Monitoring tworzy ślad renderowania ekranu dla każdego ekranu w aplikacji. Te ślady zbierają i mierzą te dane:
Klatki renderowane powoli – pomiar procentu instancji ekranu, których renderowanie trwa dłużej niż 16 ms.
Zablokowane klatki – odsetek przypadków, w których renderowanie ekranu trwało dłużej niż 700 ms.
Spowolnione lub zamrożone klatki w aplikacji mogą powodować niską wydajność urządzenia, zwaną też zacinaniem się lub opóźnieniem. Rejestrowanie danych o zamrożonych i wolno renderowanych klatkach może pomóc w identyfikowaniu ekranów o słabych wynikach, co umożliwia poprawę wydajności renderowania aplikacji.
Dane dotyczące logów czasu renderowania ekranu możesz wyświetlić na karcie Renderowanie ekranu w tabeli logów. Tabela śladów znajduje się u dołu strony Skuteczność w Firebase konsoli. Więcej informacji znajdziesz w artykule Śledzenie, wyświetlanie i filtrowanie danych o skuteczności.
Dane zbierane przez logi czasu renderowania ekranu
Są to gotowe ślady, więc nie możesz do nich dodawać niestandardowych danych ani atrybutów.
Powolne renderowanie klatek i zablokowane klatki są obliczane przy założeniu, że częstotliwość odświeżania urządzenia wynosi 60 Hz. Jeśli częstotliwość odświeżania urządzenia jest niższa niż 60 Hz, każda klatka będzie renderowana wolniej, ponieważ na sekundę renderowanych jest mniej klatek. Dłuższy czas renderowania może powodować zgłaszanie większej liczby spowolnionych lub zablokowanych klatek, ponieważ więcej klatek będzie renderowanych wolniej lub będzie się zawieszać. Jeśli jednak częstotliwość odświeżania urządzenia jest wyższa niż 60 Hz, każda klatka będzie renderowana szybciej. Może to spowodować zgłaszanie mniejszej liczby wolnych lub zamrożonych klatek. Jest to obecne ograniczenie w pakiecie SDK Performance Monitoring.
Klatki z powolnym renderowaniem
Ten wskaźnik to odsetek sesji użytkowników, w których na danym ekranie wystąpiło zauważalne spowolnienie renderowania. Ten rodzaj danych to odsetek instancji ekranu, podczas których ponad 50% klatek renderowało się dłużej niż 16 ms.
Zablokowane klatki
Ten rodzaj danych to odsetek sesji użytkowników, w których na danym ekranie wystąpiła zauważalna liczba zamrożonych klatek. W szczególności ten rodzaj danych to odsetek wystąpień ekranu, podczas których renderowanie ponad 0,1% klatek trwało dłużej niż 700 ms.
Jak są generowane ślady renderowania ekranu?
Rozpoczyna się dla każdego obiektu UIViewController w obiekcie keyWindow, gdy aplikacja wywołuje funkcję
viewDidAppear:.Zatrzymuje się, gdy aplikacja wywołuje funkcję
viewDidDisappear:.
Pamiętaj, że ślady renderowania ekranu nie rejestrują kanonicznych kontrolerów widoku kontenera.
Śledzenie, wyświetlanie i filtrowanie danych o skuteczności
Aby wyświetlać dane o skuteczności w czasie rzeczywistym, upewnij się, że Twoja aplikacja korzysta z wersji pakietu SDK do monitorowania skuteczności, która jest zgodna z przetwarzaniem danych w czasie rzeczywistym. Więcej informacji o danych o skuteczności w czasie rzeczywistym
Śledzenie kluczowych danych w panelu
Aby dowiedzieć się, jak zmieniają się Twoje kluczowe dane, dodaj je do tablicy danych u góry panelu Skuteczność. Możesz szybko wykrywać regresje, sprawdzając zmiany z tygodnia na tydzień, lub weryfikować, czy ostatnie zmiany w kodzie poprawiają skuteczność.
Panel monitorowania skuteczności w Firebase" />
Aby dodać dane do tablicy danych, wykonaj te czynności:
- Otwórz panel Wydajność w konsoli Firebase.
- Kliknij pustą kartę danych, a potem wybierz istniejące dane, które chcesz dodać do tablicy.
- Kliknij na wypełnionej karcie danych, aby wyświetlić więcej opcji, np. zastąpić lub usunąć dane.
Tablica danych pokazuje zebrane dane w czasie, zarówno w formie graficznej, jak i jako liczbową zmianę procentową.
Dowiedz się więcej o korzystaniu z panelu.
Wyświetlanie wydajności ekranu w konsoli
Aby wyświetlić ślady, otwórz panel Skuteczność w konsoli Firebase, przewiń w dół do tabeli śladów, a następnie kliknij odpowiednią kartę. Tabela zawiera najważniejsze dane dotyczące każdego śladu. Możesz nawet posortować listę według zmiany procentowej konkretnych danych.
Performance Monitoring udostępnia w Firebase konsoli stronę rozwiązywania problemów, która wyróżnia zmiany wskaźników, co ułatwia szybkie rozwiązywanie problemów z wydajnością i minimalizowanie ich wpływu na aplikacje i użytkowników. Strony rozwiązywania problemów możesz używać, gdy dowiesz się o potencjalnych problemach z wydajnością, np. w tych sytuacjach:
- Wybierasz w panelu odpowiednie dane i zauważasz dużą różnicę.
- W tabeli śladów sortujesz dane tak, aby największe różnice były wyświetlane u góry, i widzisz znaczną zmianę procentową.
- Otrzymasz alert e-mail z powiadomieniem o problemie z wydajnością.
Stronę rozwiązywania problemów możesz otworzyć w ten sposób:
- Na panelu danych kliknij przycisk Wyświetl szczegóły danych.
- Na dowolnej karcie danych kliknij
=> Wyświetl szczegóły . Na stronie rozwiązywania problemów wyświetlają się informacje o wybranych danych. - W tabeli logów czasu kliknij nazwę logu czasu lub dowolną wartość danych w wierszu powiązanym z tym logiem czasu.
- W alercie e-mail kliknij Sprawdź teraz.
Gdy w tabeli śladów klikniesz nazwę śladu, możesz przejść do szczegółowych danych, które Cię interesują. Aby przefiltrować dane według atrybutu, np. kliknij przycisk
Dane monitorowania skuteczności w Firebase filtrowane według atrybutu" />
- Filtruj według Wersji aplikacji, aby wyświetlić dane dotyczące 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 bazy danych nie wpływa na określony region.
Dowiedz się więcej o wyświetlaniu danych dotyczących śladów.
Następne kroki
Dowiedz się więcej o używaniu atrybutów do analizowania danych o skuteczności.
Dowiedz się więcej o tym, jak śledzić problemy z wydajnością w konsoli Firebase.