Sự cố và ngoại lệ - SDK iOS

Tài liệu này cung cấp thông tin tổng quan cấp cao về hoạt động đo lường sự cố và ngoại lệ bằng cách sử dụng SDK Google Analytics dành cho iOS phiên bản 3.

Tổng quan

Tính năng đo lường sự cố và ngoại lệ cho phép bạn đo lường số lượng và loại sự cố cũng như ngoại lệ xảy ra trong ứng dụng của mình. Có các trường ngoại lệ sau đây:

Tên trường Trường công cụ theo dõi Loại Bắt buộc Nội dung mô tả
Nội dung mô tả kGAIExDescription NSString Không Nội dung mô tả về trường hợp ngoại lệ (tối đa 100 ký tự). Chấp nhận nil.
isFatal kGAIExFatal BOOL Cho biết liệu ngoại lệ có nghiêm trọng hay không. YES cho biết lỗi nghiêm trọng.

Dữ liệu về sự cố và ngoại lệ chủ yếu có trong báo cáo Sự cố và ngoại lệ.

Ngoại lệ đã phát hiện

Trường hợp ngoại lệ đã phát hiện là các lỗi trong ứng dụng mà bạn đã xác định mã xử lý ngoại lệ, chẳng hạn như thỉnh thoảng hết thời gian chờ kết nối mạng trong một yêu cầu dữ liệu.

Đo lường một trường hợp ngoại lệ đã phát hiện được bằng cách đặt các giá trị trường ngoại lệ trên trình theo dõi và gửi lượt truy cập, như trong ví dụ sau:

/*
 * 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.
}

Đo lường ngoại lệ chưa nắm bắt

Các trường hợp ngoại lệ chưa phát hiện được biểu thị những trường hợp ứng dụng của bạn gặp phải những điều kiện không mong muốn trong thời gian chạy và thường nghiêm trọng, khiến ứng dụng gặp sự cố. Hệ thống có thể tự động gửi các trường hợp ngoại lệ chưa phát hiện được đến Google Analytics bằng cách đặt thuộc tính trackUncaughtExceptions thành YES. Ví dụ:

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

Khi sử dụng tính năng tự động đo lường ngoại lệ, hãy lưu ý những điều sau:

  • Tất cả các trường hợp ngoại lệ được gửi bằng tính năng tự động đo lường ngoại lệ đều được báo cáo là nghiêm trọng trong Google Analytics.
  • Theo mặc định, trường nội dung mô tả được tự động đặt bằng cách sử dụng loại ngoại lệ, tên lớp, tên phương thức và tên luồng.