Error & Pengecualian - iOS SDK

Dokumen ini memberikan ringkasan umum tentang pengukuran error dan pengecualian menggunakan Google Analytics SDK untuk iOS v3.

Ringkasan

Pengukuran error dan pengecualian memungkinkan Anda mengukur jumlah dan jenis error dan pengecualian yang terjadi di aplikasi Anda. Sebuah pengecualian memiliki kolom berikut:

Nama Kolom Kolom Pelacak Jenis Wajib Deskripsi
Deskripsi kGAIExDescription NSString Tidak Deskripsi pengecualian (maksimal 100 karakter). Menerima nil.
isFatal kGAIExFatal BOOL Ya Menunjukkan apakah pengecualian bersifat fatal atau tidak. YES menunjukkan fatal.

Data error dan pengecualian hanya tersedia di laporan Error dan Pengecualian.

Pengecualian yang Tertangkap

Pengecualian yang tertangkap adalah error di aplikasi yang kode penanganan pengecualiannya telah Anda tetapkan, seperti waktu tunggu koneksi jaringan sesekali berlangsung selama permintaan data.

Ukur pengecualian yang tertangkap dengan menetapkan nilai kolom pengecualian di pelacak dan mengirim hit, seperti dalam contoh ini:

/*
 * 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.
    id tracker = [[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.
}

Pengukuran Pengecualian yang Tidak Tertangkap

Pengecualian yang tidak tertangkap mewakili instance saat aplikasi mengalami kondisi yang tidak terduga saat runtime dan sering bersifat fatal, sehingga menyebabkan aplikasi error. Pengecualian yang tidak tertangkap dapat otomatis dikirim ke Google Analytics dengan menetapkan properti trackUncaughtExceptions ke YES. Contoh:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  [[GAI sharedInstance] setTrackUncaughtExceptions:YES];
  return YES;
}

Saat menggunakan pengukuran pengecualian otomatis, perhatikan hal berikut:

  • Semua pengecualian yang dikirim menggunakan pengukuran pengecualian otomatis dilaporkan sebagai fatal di Google Analytics.
  • Secara default, kolom deskripsi ditetapkan secara otomatis menggunakan jenis pengecualian, nama class, nama metode, dan nama thread.