Ten dokument zawiera ogólny opis metod pomiaru awarii i wyjątków za pomocą pakietu SDK Google Analytics na iOS w wersji 3.
Przegląd
Pomiar awarii i wyjątków pozwala mierzyć liczbę oraz rodzaj awarii i wyjątków, które występują w aplikacji. Wyjątkiem są te pola:
Nazwa pola | Pole skryptu śledzenia | Typ | Wymagane | Opis |
---|---|---|---|---|
Opis |
|
|
Nie | Opis wyjątku (maksymalnie 100 znaków). Akceptuje
nil . |
isFatal |
|
BOOL |
Tak | Wskazuje, czy wyjątek był krytyczny.
YES oznacza błąd krytyczny. |
Dane o awariach i wyjątkach są dostępne przede wszystkim w raporcie o awariach i wyjątkach.
Złapane wyjątki
Wykryte wyjątki to błędy w aplikacji, w przypadku których zdefiniujesz kod obsługi wyjątków. Może to być na przykład rzadki limit czasu połączenia z siecią podczas żądania danych.
Aby określić zarejestrowany wyjątek, ustaw wartości pól wyjątków w narzędziu do śledzenia i wyślij działanie, jak w tym przykładzie:
/* * An app tries to load a list of high scores from the cloud. If the request * times out, an exception is sent to Google Analytics */ @try { // Request some scores from the network. NSArray *highScores = [self getHighScoresFromCloud]; } @catch (NSException *exception) { // May return nil if a tracker has not already been initialized with a // property ID. idtracker = [[GAI sharedInstance] defaultTracker]; [tracker send:[[GAIDictionaryBuilder createExceptionWithDescription:@"Connection timeout" // Exception description. May be truncated to 100 chars. withFatal:@NO] build]]; // isFatal (required). NO indicates non-fatal exception. }
Pomiar niewykrytych wyjątków
Nieobsłużone wyjątki to przypadki, w których aplikacja napotkała nieoczekiwane warunki w czasie działania i często są krytyczne, powodując jej awarię.
Niewykryte wyjątki mogą być wysyłane do Google Analytics automatycznie po ustawieniu właściwości trackUncaughtExceptions
na YES
. Przykład:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { [[GAI sharedInstance] setTrackUncaughtExceptions:YES]; return YES; }
Jeśli korzystasz z automatycznego pomiaru wyjątków, pamiętaj o tych kwestiach:
- Wszystkie wyjątki wysłane za pomocą automatycznego pomiaru wyjątków są zgłaszane w Google Analytics jako krytyczne.
- Domyślnie pole opisu jest ustawiane automatycznie z użyciem typu wyjątku, nazwy klasy, nazwy metody i nazwy wątku.