Performance Monitoring zbiera ślady, aby ułatwić Ci monitorowanie skuteczności aplikacji. Ślad to raport danych o skuteczności, który jest rejestrowany w aplikacji między 2 momentami w czasie.
Możesz tworzyć własne logi czasu, aby monitorować dane o wydajności powiązane z konkretnego kodu w aplikacji. Za pomocą niestandardowego śledzenia kodu możesz sprawdzić, wykonanie określonego zadania lub zestawu zadań przez aplikację, Wczytanie zbioru obrazów lub wysłanie zapytania do bazy danych.
Domyślnym wskaźnikiem niestandardowego śledzenia kodu jest jego „czas trwania” (czas między punkt początkowy i końcowy śledzenia), ale możesz dodać danych niestandardowych.
Początek i koniec niestandardowego logu czasu w kodzie definiujesz za pomocą interfejsów API dostępnych w pakiecie SDK Performance Monitoring. Niestandardowe logi czasu kodu można uruchamiać w dowolnym momencie po ich utworzeniu. są bezpieczne dla wątków.
Ponieważ domyślne dane zbierane dla tych logów czasu to „duration”, są one czasem nazywany „logami czasu trwania”.
Dane z tych logów możesz wyświetlić na podkarcie Niestandardowe logi czasu. znajdującą się u dołu panelu Skuteczność (dowiedz się więcej o za pomocą konsoli na tej stronie).
Atrybuty domyślne, atrybuty niestandardowe i dane niestandardowe
W przypadku niestandardowych logów czasu Performance Monitoring automatycznie loguje się atrybuty domyślne (wspólne metadane, np. kraj, przeglądarka, adres URL strony itp.) aby można było przefiltrować dane logu czasu w konsoli Firebase. Ty może też dodawać i monitorować atrybuty niestandardowe. (np. poziom gry lub właściwości użytkownika).Możesz dodatkowo skonfigurować niestandardowy log czasu, aby rejestrować danych niestandardowych do zdarzeń związanych ze skutecznością, nie występują w zakresie logu czasu. Możesz np. utworzyć dane niestandardowe o nazwie liczba trafień i braków w pamięci podręcznej lub liczba przypadków, gdy interfejs użytkownika nie odpowiada przez zauważalny okres.
Niestandardowe atrybuty i dane są wyświetlane w konsoli Firebase obok domyślnych atrybutów i domyślnych danych śledzenia.
Dodaj niestandardowe logi czasu kodu
Użyj Performance Monitoring interfejsu Trace API do dodania niestandardowych logów kodu, aby monitorować określony kod aplikacji.
Pamiętaj:
- Aplikacja może mieć wiele niestandardowych logów czasu.
- Możesz uruchamiać jednocześnie więcej niż 1 śledzenie kodu niestandardowego.
- Nazwy niestandardowych logów czasu kodu muszą spełniać te wymagania:
bez spacji na początku ani na końcu, bez znaku podkreślenia (
_
), a maksymalna długość to 100 znaków. - Niestandardowe logi czasu obsługują dodawanie niestandardowych danych atrybutów niestandardowych.
Aby rozpocząć i zatrzymać śledzenie niestandardowego kodu, owiń kod, który chcesz śledzić, wierszami kodu podobnymi do tego:
Web
import { trace } from "firebase/performance"; const t = trace(perf, "CUSTOM_TRACE_NAME"); t.start(); // Code that you want to trace // ... t.stop();
Web
const trace = perf.trace("CUSTOM_TRACE_NAME"); trace.start(); // Code that you want to trace // ... trace.stop();
Dodawanie niestandardowych logów czasu kodu za pomocą interfejsu User Timing API
Oprócz interfejsu Performance Monitoring Trace API możesz dodawać niestandardowe linie kodu za pomocą natywnego interfejsu User Timing API przeglądarki. Czas trwania logu czasu mierzony za pomocą tego interfejsu API jest automatycznie pobierany przez Pakiet SDK Performance Monitoring. Korzystanie z interfejsu User Timing API jest szczególnie przydatne, aby asynchronicznie wczytywać pakiet SDK Performance Monitoring. Po zainicjowaniu pakietu SDK będzie zapisywał pomiary, które miały miejsce przed jego wczytaniem.
Aby korzystać z tej funkcji, owiń kod, który chcesz śledzić, za pomocą znaczników User Timing:
Web
const performance = window.performance; performance.mark("measurementStart"); // Code that you want to trace // ... performance.mark("measurementStop"); performance.measure("customTraceName", "measurementStart", "measurementStop");
Web
const performance = window.performance; performance.mark("measurementStart"); // Code that you want to trace // ... performance.mark("measurementStop"); performance.measure("customTraceName", "measurementStart", "measurementStop");
Pamiętaj, że performance
w powyższym przykładzie odnosi się do adresu
window.performance
obiekt.
Jeśli korzystasz z interfejsu User Timing API, nie możesz dodawać niestandardowych danych ani atrybutów do niestandardowe ślady kodu. Użyj Performance Monitoring Trace API, jeśli chcesz dodać te niestandardowe do niestandardowego śledzenia kodu.
Dodawanie niestandardowych wskaźników do niestandardowych logów czasu kodu
Użyj funkcji Performance Monitoring Interfejs Trace API , aby dodać niestandardowe wskaźniki do niestandardowych logów czasu kodu.
Pamiętaj:
- Nazwy danych niestandardowych muszą spełniać te wymagania:
bez spacji na początku ani na końcu, bez znaku podkreślenia (
_
), a maksymalna długość to 100 znaków. - Każdy ślad niestandardowego kodu może rejestrować maksymalnie 32 rodzaje danych (w tym domyślne dane Czas trwania).
Aby dodać dane niestandardowe, dodaj wiersz kodu podobnego do tego za każdym razem, gdy wystąpi zdarzenie. Te dane niestandardowe zliczają np. zdarzeń związanych ze wydajnością aplikacji.
Web
import { trace } from "firebase/performance"; async function getInventory(inventoryIds) { const t = trace(perf, "inventoryRetrieval"); // Tracks the number of IDs fetched (the metric could help you to optimize in the future) t.incrementMetric("numberOfIds", inventoryIds.length); // Measures the time it takes to request inventory based on the amount of inventory t.start(); const inventoryData = await retrieveInventory(inventoryIds); t.stop(); return inventoryData; }
Web
async function getInventory(inventoryIds) { const trace = perf.trace("inventoryRetrieval"); // Tracks the number of IDs fetched (the metric could help you to optimize in the future) trace.incrementMetric("numberOfIds", inventoryIds.length); // Measures the time it takes to request inventory based on the amount of inventory trace.start(); const inventoryData = await retrieveInventory(inventoryIds); trace.stop(); return inventoryData; }
Tworzenie atrybutów niestandardowych na potrzeby niestandardowych logów czasu
Użyj Performance Monitoring Trace API , aby dodać niestandardowe atrybuty do niestandardowych logów czasu.
Aby używać atrybutów niestandardowych, dodaj do aplikacji kod, który je definiuje wiąże go z określonym niestandardowym śladem kodu. Możesz określić w dowolnym momencie od rozpoczęcia śledzenia do jego zakończenia.
Pamiętaj:
Nazwy atrybutów niestandardowych muszą spełniać te wymagania:
- Brak znaków spacji na początku i na końcu, brak znaku podkreślenia (
_
) na początku. - Brak pokoi
- Maksymalna długość to 32 znaki.
- Dozwolone znaki w nazwie to
A-Z
,a-z
i_
.
- Brak znaków spacji na początku i na końcu, brak znaku podkreślenia (
Każdy niestandardowy ślad kodu może rejestrować maksymalnie 5 atrybutów niestandardowych.
Upewnij się, że atrybuty niestandardowe nie zawierają żadnych informacji umożliwiających identyfikację osoby przez Google.
Więcej informacji o tych wytycznych
Web
import { trace } from "firebase/performance"; const t = trace(perf, "test_trace"); t.putAttribute("experiment", "A"); // Update scenario t.putAttribute("experiment", "B"); // Reading scenario const experimentValue = t.getAttribute("experiment"); // Delete scenario t.removeAttribute("experiment"); // Read attributes const traceAttributes = t.getAttributes();
Web
const trace = perf.trace("test_trace"); trace.putAttribute("experiment", "A"); // Update scenario trace.putAttribute("experiment", "B"); // Reading scenario const experimentValue = trace.getAttribute("experiment"); // Delete scenario trace.removeAttribute("experiment"); // Read attributes const traceAttributes = trace.getAttributes();
Śledzenie, wyświetlanie i filtrowanie danych o skuteczności
Aby wyświetlać dane o wydajności w czasie rzeczywistym, sprawdź, czy Twoja aplikacja używa wersji pakietu Performance Monitoring SDK, która jest zgodna z przetwarzaniem danych w czasie rzeczywistym. Więcej informacji na temat danych o skuteczności w czasie rzeczywistym
Śledzenie określonych danych w panelu
Aby dowiedzieć się, jak zmieniają się Twoje kluczowe dane, dodaj je do panelu danych u góry panelu Skuteczność. Możesz szybko wykryć regresje, przeglądając dane tygodniowe. zmian lub sprawdź, czy ostatnie zmiany w kodzie poprawiają jego skuteczność.
Panel monitorowania wydajności Firebase" />Aby dodać wskaźnik do tablicy wskaźników, wykonaj te czynności:
- Przejdź do Panel wydajności w konsoli Firebase.
- Kliknij pustą kartę wskaźnika, a potem wybierz jeden z istniejących rodzajów danych, który chcesz dodać do swojej tablicy.
- Kliknij na wypełnionej karcie danych, aby wyświetlić więcej opcji. np. zastąpienie lub usunięcie danych.
Panel wskaźników pokazuje zebrane dane na przestrzeni czasu zarówno w postaci graficznej, jak i liczbową zmianę procentową.
Dowiedz się więcej o korzystaniu z panelu.
Wyświetlanie logów czasu i ich danych
Aby wyświetlić logi czasu, otwórz Panel Skuteczność W konsoli Firebase przewiń w dół do tabeli logów czasu, a następnie kliknij odpowiednią podkartę. Tabela zawiera najważniejsze wskaźniki dla każdego logu czasu. Możesz nawet posortować listę według zmianę procentową określonego wskaźnika.
Performance Monitoring udostępnia stronę rozwiązywania problemów w konsoli Firebase, na której wyróżnione są dane. zmian, dzięki czemu można szybko rozwiązać problemy i zminimalizować wpływ problemów ze skutecznością aplikacji i użytkowników. Możesz skorzystać ze strony rozwiązywania problemów, aby poznać potencjalne problemy z wydajnością, np. w następujących sytuacjach:
- Gdy wybierzesz odpowiednie dane na pulpicie, zauważysz sporą różnicę.
- Po posortowaniu w tabeli logów czasu największe delta wyświetlają się u góry. znacznej zmiany procentowej.
- Otrzymasz e-maila z powiadomieniem o problemie ze skutecznością.
Dostęp do strony rozwiązywania problemów możesz uzyskać na kilka sposobów:
- W panelu wskaźników kliknij przycisk Wyświetl szczegóły wskaźnika.
- Na dowolnej karcie danych wybierz
. Na stronie rozwiązywania problemów wyświetlane są informacje o wskaźniku wybrane przez Ciebie. => Wyświetl szczegóły - W tabeli logów czasu kliknij nazwę logu czasu lub dowolną wartość danych w wierszu, który jest z nim powiązany. śledzić.
- W powiadomieniu e-mail kliknij Zbadaj teraz.
Po kliknięciu nazwy logu czasu w tabeli logów czasu możesz przeanalizować dane
a interesem publicznym. Kliknij
- Aby wyświetlić dane na temat określonej strony w witrynie, zastosuj filtrowanie według adresu URL strony.
- Filtruj według użytego rodzaju połączenia, aby dowiedzieć się, jak połączenie 3G wpływa na Twoją aplikację.
- Filtruj według kraju, aby sprawdzić, czy lokalizacja bazy danych nie ma wpływu na konkretny region
Dowiedz się więcej o wyświetlaniu danych dotyczących prześwietleń.
Następne kroki
Więcej informacji o za pomocą atrybutów, by analizować dane o skuteczności.
Dowiedz się więcej o tym, śledź problemy ze skutecznością w konsoli Firebase.
Skonfiguruj alerty o zmianach w kodzie, które mogą się pogarszać wydajność aplikacji. Możesz na przykład skonfigurować alert e-mail dla: Twojego zespołu, jeśli czas trwania niestandardowego śledzenia kodu przekracza wyznaczoną przez Ciebie wartość progową.