Dodawanie niestandardowego monitorowania na potrzeby określonego kodu aplikacji

Monitorowanie wydajności zbiera ślady, które ułatwiają monitorowanie działania aplikacji. O jest raport zawierający dane dotyczące wydajności zebrane między dwoma punktami w czasie do aplikacji.

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ą interfejsy API udostępniane przez pakiet SDK Performance Monitoring. Niestandardowe logi czasu kodu można uruchamiać w dowolnym momencie po ich utworzeniu. są bezpieczne dla wątków.

Jako że 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 Monitorowanie wydajności loguje automatycznie atrybuty domyślne (wspólne metadane, np. wersja aplikacji, kraj, urządzenie itp.) Dzięki temu możesz 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żywanie interfejsu Performance Monitoring Trace API (Swift, | Obj-C) , aby dodać niestandardowe ślady kodu w celu monitorowania konkretnego kodu aplikacji.

Pamiętaj:

  • Aplikacja może mieć wiele niestandardowych logów czasu.
  • Jednocześnie może być uruchomiony więcej niż 1 niestandardowy log czasu kodu.
  • 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ć niestandardowy log czasu, opakuj kod, za pomocą którego chcesz śledzić kod wiersze kodu podobne do tych:

Swift

Uwaga: ta usługa Firebase nie jest dostępna na systemy docelowe macOS, Mac Catalyst i watchOS.
// Add the Performance Monitoring module to your header
import FirebasePerformance

let trace = Performance.startTrace(name: "CUSTOM_TRACE_NAME")

// code that you want to trace

trace.stop()

Objective-C

Uwaga: ta usługa Firebase nie jest dostępna na systemy docelowe macOS, Mac Catalyst i watchOS.
// Add the Performance Monitoring module to your header
@import FirebasePerformance;

FIRTrace *trace = [FIRPerformance startTraceWithName:@"CUSTOM_TRACE_NAME"];

// code that you want to trace

[trace stop];

Dodawanie niestandardowych wskaźników do niestandardowych logów czasu kodu

Używanie interfejsu Performance Monitoring Trace API (Swift, | Obj-C) , 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 niestandardowy ślad kodu może rejestrować maksymalnie 32 wskaźniki (w tym domyślne Czas trwania).

Aby dodać dane niestandardowe, dodaj za każdym razem wiersz kodu podobny do tego poniżej zdarzenia zdarzenia. Te dane niestandardowe zliczają np. zdarzeń związanych z wydajnością, które występują w aplikacji, takich jak trafienia w pamięci podręcznej czy ponownych prób.

Swift

Uwaga: ta usługa Firebase nie jest dostępna na systemy docelowe macOS, Mac Catalyst i watchOS.
let trace = Performance.startTrace(name: "CUSTOM_TRACE_NAME")

trace.incrementMetric(named:"EVENT_NAME", by: 1)
// code that you want to trace (and log custom metrics)

trace.stop()

Objective-C

Uwaga: ta usługa Firebase nie jest dostępna na systemy docelowe macOS, Mac Catalyst i watchOS.
FIRTrace *trace = [FIRPerformance startTraceWithName:@"CUSTOM_TRACE_NAME"];

[trace incrementMetric:@"EVENT_NAME" byInt:1];
// code that you want to trace (and log custom metrics)

[trace stop];

Tworzenie atrybutów niestandardowych na potrzeby niestandardowych logów czasu

Używanie interfejsu Performance Monitoring Trace API (Swift, | Obj-C) , 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 odstępu na początku i na końcu, bez znaku podkreślenia (_) na początku i na końcu.
    • Brak pokoi
    • Maksymalna długość to 32 znaki.
    • Dozwolone znaki w nazwie to A-Z, a-z i _.
  • Każdy niestandardowy ślad kodu może rejestrować maksymalnie 5 atrybutów niestandardowych.

  • Upewnij się, że atrybuty niestandardowe nie zawierają żadnych informacji, które osobiście identyfikuje daną osobę w Google.

    Więcej informacji o tych wytycznych

Swift

Uwaga: ta usługa Firebase nie jest dostępna na systemy docelowe macOS, Mac Catalyst i watchOS.
let trace = Performance.startTrace(name: "CUSTOM_TRACE_NAME")

trace.setValue("A", forAttribute: "experiment")

// Update scenario.
trace.setValue("B", forAttribute: "experiment")

// Reading scenario.
let experimentValue:String? = trace.valueForAttribute("experiment")

// Delete scenario.
trace.removeAttribute("experiment")

// Read attributes.
let attributes:[String, String] = trace.attributes;

Objective-C

Uwaga: ta usługa Firebase nie jest dostępna na systemy docelowe macOS, Mac Catalyst i watchOS.
FIRTrace *trace = [FIRPerformance startTraceWithName:@"CUSTOM_TRACE_NAME"];

[trace setValue:@"A" forAttribute:@"experiment"];

// Update scenario.
[trace setValue:@"B" forAttribute:@"experiment"];

// Reading scenario.
NSString *experimentValue = [trace valueForAttribute:@"experiment"];

// Delete scenario.
[trace removeAttribute:@"experiment"];

// Read attributes.
NSDictionary <NSString *, NSString *> *attributes = [trace attributes];

Śledzenie, wyświetlanie i filtrowanie danych o skuteczności

Śledzenie określonych danych w panelu

Aby poznać trendy dotyczące kluczowych wskaźników, dodaj je do tabeli danych u góry Panel Skuteczność. Możesz szybko wykryć regresje, przeglądając dane tygodniowe. zmian lub sprawdź, czy ostatnie zmiany w kodzie poprawiają jego skuteczność.

obraz tablicy wskaźników w panelu Monitorowanie wydajności Firebase

Aby dodać wskaźnik do tablicy wskaźników, wykonaj te czynności:

  1. Przejdź do Panel Skuteczność w konsoli Firebase.
  2. Kliknij pustą kartę wskaźnika, a potem wybierz jeden z istniejących rodzajów danych, który chcesz dodać do swojej tablicy.
  3. 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 i 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.

Monitorowanie wydajności 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 z wydajnością.

Stronę rozwiązywania problemów możesz otworzyć na kilka sposobów:

  • W panelu wskaźników kliknij przycisk Wyświetl szczegóły wskaźnika.
  • Na dowolnej karcie danych wybierz => Wyświetl szczegóły. Na stronie rozwiązywania problemów wyświetlane są informacje o wskaźniku wybrane przez Ciebie.
  • 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 Filtruj – pozwala filtrować dane. według atrybutu, na przykład:

obraz przedstawiający dane Monitorowania wydajności Firebase filtrowane według atrybutu
  • Aby wyświetlić dane o poprzedniej lub najnowszej wersji, zastosuj filtrowanie według wersji aplikacji.
  • Filtruj według opcji Urządzenie, aby dowiedzieć się, jak starsze urządzenia obsługują Twoją aplikację
  • Filtruj według kraju, aby sprawdzić, czy lokalizacja bazy danych nie ma wpływu na konkretny region

Więcej informacji o przeglądanie danych o ślady czasu.

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ą.

  • Wyświetl szczegółowe raporty na temat sesji użytkowników, podczas których możesz zobaczyć konkretny log czasu w kontekście osi czasu innych śladów zebranych podczas tego samego okresu, .