ข้อขัดข้องและข้อยกเว้น - iOS SDK

เอกสารนี้แสดงภาพรวมระดับสูงเกี่ยวกับข้อขัดข้องและข้อยกเว้น ที่ใช้ Google Analytics SDK สําหรับ iOS v3

ภาพรวม

การขัดข้องและข้อยกเว้นช่วยให้คุณวัดจํานวนและประเภท การขัดข้องและข้อยกเว้นที่เกิดขึ้นในแอปได้ ข้อยกเว้น มีช่องต่อไปนี้

ชื่อช่อง ช่องเครื่องมือติดตาม ประเภท จำเป็น คำอธิบาย
คำอธิบาย kGAIExDescription NSString ไม่ได้ คําอธิบายของข้อยกเว้น (ไม่เกิน 100 อักขระ) ยอมรับ nil
ร้ายแรง kGAIExFatal BOOL ได้ ระบุว่าเป็นข้อยกเว้นที่ร้ายแรงหรือไม่ YES แสดงถึงอันตรายร้ายแรง

ข้อมูลข้อขัดข้องและข้อยกเว้นจะอยู่ในรายงานข้อขัดข้องและข้อยกเว้นเป็นหลัก

ข้อยกเว้นที่ตรวจจับได้

ข้อยกเว้นที่ตรวจจับได้คือข้อผิดพลาดในแอปซึ่งคุณได้กําหนดโค้ดการจัดการข้อยกเว้นไว้ เช่น การหมดเวลาในการเชื่อมต่อเครือข่ายเป็นครั้งคราวในระหว่างการขอข้อมูล

วัดข้อยกเว้นที่ตรวจจับไว้โดยกําหนดค่าของช่องข้อยกเว้นในเครื่องมือติดตามและส่ง Hit ตามตัวอย่างนี้

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

การวัดข้อยกเว้นที่ไม่ถูกตรวจจับ

ข้อยกเว้นที่ตรวจไม่พบหมายถึงกรณีที่แอปพบเงื่อนไขที่ไม่คาดคิดขณะรันไทม์และมักจะร้ายแรง ทําให้แอปขัดข้อง คุณสามารถส่งข้อยกเว้นที่ไม่ถูกตรวจจับไปยัง Google Analytics โดยอัตโนมัติ โดยตั้งค่าพร็อพเพอร์ตี้ trackUncaughtExceptions เป็น YES ดังตัวอย่างต่อไปนี้

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

เมื่อใช้การวัดข้อยกเว้นอัตโนมัติ โปรดคํานึงถึงสิ่งต่อไปนี้

  • ข้อยกเว้นทั้งหมดที่ส่งโดยใช้การวัดข้อยกเว้นอัตโนมัติจะถูกรายงานเป็น ร้ายแรงใน Google Analytics
  • โดยค่าเริ่มต้น ช่องคําอธิบายจะตั้งค่าโดยอัตโนมัติโดยใช้ประเภทการยกเว้น ชื่อคลาส ชื่อเมธอด และชื่อชุดข้อความ