Check out what’s new from Firebase at Google I/O 2022. Learn more

เพิ่มการตรวจสอบที่กำหนดเองสำหรับรหัสแอปเฉพาะ

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

คุณสามารถสร้างการติดตามของคุณเองเพื่อตรวจสอบข้อมูลประสิทธิภาพที่เกี่ยวข้องกับโค้ดเฉพาะในแอปของคุณ ด้วยการ ติดตามโค้ดแบบกำหนดเอง คุณสามารถวัดได้ว่าแอปของคุณใช้เวลานานเท่าใดในการทำงานเฉพาะหรือชุดของงานให้เสร็จสิ้น เช่น การโหลดชุดของรูปภาพหรือการสืบค้นฐานข้อมูลของคุณ

เมตริกเริ่มต้นสำหรับการติดตามโค้ดที่กำหนดเองคือ "ระยะเวลา" (เวลาระหว่างจุดเริ่มต้นและจุดสิ้นสุดของการติดตาม) แต่คุณสามารถเพิ่ม เมตริกที่กำหนดเอง ได้เช่นกัน

ในโค้ดของคุณ คุณกำหนดจุดเริ่มต้นและจุดสิ้นสุดของการติดตามโค้ดที่กำหนดเองโดยใช้ API ที่จัดเตรียมโดย Performance Monitoring SDKติดตามโค้ดแบบกำหนดเองสามารถเริ่มต้นได้ทุกเมื่อหลังจากที่สร้างขึ้นแล้ว และสามารถเธรดได้อย่างปลอดภัย

เนื่องจากเมตริกเริ่มต้นที่รวบรวมสำหรับการติดตามเหล่านี้คือ "duration" บางครั้งจึงเรียกว่า "Duration traces"

คุณสามารถดูข้อมูลจากการติดตามเหล่านี้ได้ในแท็บย่อย Custom traces ของตารางการติดตาม ซึ่งอยู่ด้านล่างสุดของแดชบอร์ด ประสิทธิภาพ (เรียนรู้เพิ่มเติมเกี่ยวกับ การใช้คอนโซล ภายหลังในหน้านี้)

แอตทริบิวต์เริ่มต้น แอตทริบิวต์ที่กำหนดเอง และเมตริกที่กำหนดเอง

สำหรับการติดตามโค้ดที่กำหนดเอง การตรวจสอบประสิทธิภาพจะบันทึก แอตทริบิวต์เริ่มต้น โดยอัตโนมัติ (ข้อมูลเมตาทั่วไป เช่น เวอร์ชันแอป ประเทศ อุปกรณ์ ฯลฯ) เพื่อให้คุณสามารถกรองข้อมูลสำหรับการติดตามในคอนโซล Firebase คุณยังเพิ่มและตรวจสอบ แอตทริบิวต์ที่กำหนดเอง ได้ (เช่น ระดับเกมหรือคุณสมบัติของผู้ใช้)

คุณสามารถกำหนดค่าการติดตามโค้ดที่กำหนดเองเพิ่มเติมเพื่อบันทึก เมตริกที่กำหนดเอง สำหรับเหตุการณ์ที่เกี่ยวข้องกับประสิทธิภาพที่เกิดขึ้นภายในขอบเขตของการติดตาม ตัวอย่างเช่น คุณสามารถสร้างตัววัดแบบกำหนดเองสำหรับจำนวนแคช Hit และ Missed หรือจำนวนครั้งที่ UI ไม่ตอบสนองในช่วงเวลาที่เห็นได้ชัดเจน

แอตทริบิวต์ที่กำหนดเองและเมตริกที่กำหนดเองจะแสดงในคอนโซล Firebase ควบคู่ไปกับแอตทริบิวต์เริ่มต้นและเมตริกเริ่มต้นสำหรับการติดตาม

เพิ่มการติดตามโค้ดที่กำหนดเอง

ใช้ Performance Monitoring Trace API ( Swift | Obj-C ) เพื่อเพิ่มการติดตามโค้ดที่กำหนดเองเพื่อตรวจสอบโค้ดของแอปพลิเคชันเฉพาะ

สังเกตสิ่งต่อไปนี้:

  • แอปสามารถมีการติดตามโค้ดที่กำหนดเองได้หลายรายการ
  • สามารถเรียกใช้การติดตามโค้ดที่กำหนดเองได้มากกว่าหนึ่งรายการพร้อมกัน
  • ชื่อสำหรับการติดตามโค้ดที่กำหนดเองต้องเป็นไปตามข้อกำหนดต่อไปนี้: ไม่มีช่องว่างนำหน้าหรือต่อท้าย ไม่มีอักขระขีดล่าง ( _ ) นำหน้า และความยาวสูงสุดคือ 100 อักขระ
  • การติดตามโค้ดที่กำหนดเองสนับสนุนการเพิ่ม เมตริก และ แอตทริบิวต์ที่กำหนดเอง

ในการเริ่มและหยุดการติดตามโค้ดแบบกำหนดเอง ให้แรปโค้ดที่คุณต้องการติดตามด้วยบรรทัดโค้ดที่คล้ายกับต่อไปนี้:

Swift

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ไม่มีใน macOS, Mac Catalyst, เป้าหมาย 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()

วัตถุประสงค์-C

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ไม่มีใน macOS, Mac Catalyst, เป้าหมาย 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];

เพิ่มเมตริกที่กำหนดเองลงในการติดตามโค้ดที่กำหนดเอง

ใช้ Performance Monitoring Trace API ( Swift | Obj-C ) เพื่อเพิ่มตัววัดแบบกำหนดเองให้กับการติดตามโค้ดที่กำหนดเอง

สังเกตสิ่งต่อไปนี้:

  • ชื่อสำหรับเมตริกที่กำหนดเองต้องเป็นไปตามข้อกำหนดต่อไปนี้: ไม่มีช่องว่างนำหน้าหรือต่อท้าย ไม่มีอักขระขีดล่าง ( _ ) นำหน้า และความยาวสูงสุดคือ 100 อักขระ
  • การติดตามโค้ดแบบกำหนดเองแต่ละรายการสามารถบันทึกได้ถึง 32 เมตริก (รวมถึงเมตริก Duration ที่เป็นค่าเริ่มต้น)

หากต้องการเพิ่มเมตริกที่กำหนดเอง ให้เพิ่มบรรทัดโค้ดที่คล้ายกับต่อไปนี้ทุกครั้งที่เกิดเหตุการณ์ ตัวอย่างเช่น ตัววัดที่กำหนดเองนี้จะนับเหตุการณ์ที่เกี่ยวข้องกับประสิทธิภาพที่เกิดขึ้นในแอปของคุณ เช่น การเรียกใช้แคชหรือการลองใหม่

Swift

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ไม่มีใน macOS, Mac Catalyst, เป้าหมาย 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()

วัตถุประสงค์-C

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ไม่มีใน macOS, Mac Catalyst, เป้าหมาย 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];

สร้างแอตทริบิวต์ที่กำหนดเองสำหรับการติดตามโค้ดที่กำหนดเอง

ใช้ Performance Monitoring Trace API ( Swift | Obj-C ) เพื่อเพิ่มแอตทริบิวต์ที่กำหนดเองให้กับการติดตามโค้ดที่กำหนดเอง

หากต้องการใช้แอตทริบิวต์ที่กำหนดเอง ให้เพิ่มโค้ดลงในแอปที่กำหนดแอตทริบิวต์และเชื่อมโยงกับการติดตามโค้ดที่กำหนดเองโดยเฉพาะ คุณสามารถตั้งค่าแอตทริบิวต์แบบกำหนดเองได้ตลอดเวลาระหว่างเวลาที่การสืบค้นกลับเริ่มต้นและเมื่อการสืบค้นกลับหยุดลง

สังเกตสิ่งต่อไปนี้:

  • ชื่อแอตทริบิวต์ที่กำหนดเองต้องเป็นไปตามข้อกำหนดต่อไปนี้: ไม่มีช่องว่างนำหน้าหรือต่อท้าย ไม่มีอักขระขีดล่าง ( _ ) นำหน้า และความยาวสูงสุดคือ 32 อักขระ

  • การติดตามโค้ดที่กำหนดเองแต่ละรายการสามารถบันทึกแอตทริบิวต์ที่กำหนดเองได้สูงสุด 5 รายการ

  • คุณไม่ควรใช้แอตทริบิวต์ที่กำหนดเองซึ่งมีข้อมูลที่ระบุตัวบุคคลต่อ Google

    เรียนรู้เพิ่มเติมเกี่ยวกับแนวทางนี้

Swift

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ไม่มีใน macOS, Mac Catalyst, เป้าหมาย 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;

วัตถุประสงค์-C

หมายเหตุ: ผลิตภัณฑ์ Firebase นี้ไม่มีใน macOS, Mac Catalyst, เป้าหมาย 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];

ติดตาม ดู และกรองข้อมูลประสิทธิภาพ

ติดตามตัวชี้วัดเฉพาะในแดชบอร์ดของคุณ

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

รูปภาพของบอร์ดตัวชี้วัดในแดชบอร์ดการตรวจสอบประสิทธิภาพ Firebase

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

กระดานเมตริกจะแสดงข้อมูลเมตริกที่เก็บรวบรวมในช่วงเวลาหนึ่ง ทั้งในรูปแบบกราฟิกและการเปลี่ยนแปลงเป็นเปอร์เซ็นต์ที่เป็นตัวเลข

เรียนรู้เพิ่มเติมเกี่ยวกับ การใช้แดชบอร์ด

ดูร่องรอยและข้อมูลของพวกเขา

หากต้องการดูการติดตาม ให้ไปที่ แดชบอร์ด ประสิทธิภาพ ในคอนโซล Firebase เลื่อนลงไปที่ตารางการติดตาม จากนั้นคลิกแท็บย่อยที่เหมาะสม ตารางจะแสดงเมตริกระดับบนสุดบางรายการสำหรับแต่ละการติดตาม และคุณยังสามารถจัดเรียงรายการตามเปอร์เซ็นต์การเปลี่ยนแปลงสำหรับเมตริกเฉพาะได้อีกด้วย

หากคุณคลิกชื่อการติดตามในตารางการติดตาม คุณจะสามารถคลิกผ่านหน้าจอต่างๆ เพื่อสำรวจการติดตามและเจาะลึกลงไปในเมตริกที่น่าสนใจได้ ในหน้าส่วนใหญ่ คุณสามารถใช้ปุ่ม " กรอง " (ด้านซ้ายบนของหน้าจอ) เพื่อกรองข้อมูลตามแอตทริบิวต์ได้ เช่น

รูปภาพของข้อมูลการตรวจสอบประสิทธิภาพ Firebase ถูกกรองตามแอตทริบิวต์
  • กรองตาม เวอร์ชันของแอป เพื่อดูข้อมูลเกี่ยวกับรุ่นที่ผ่านมาหรือรุ่นล่าสุดของคุณ
  • กรองตาม อุปกรณ์ เพื่อดูวิธีที่อุปกรณ์รุ่นเก่าจัดการกับแอปของคุณ
  • กรองตาม ประเทศ เพื่อให้แน่ใจว่าตำแหน่งฐานข้อมูลของคุณไม่กระทบกับภูมิภาคใดภูมิภาคหนึ่ง

เรียนรู้เพิ่มเติมเกี่ยวกับ การดูข้อมูลการติดตามของคุณ

ขั้นตอนถัดไป

  • เรียนรู้เพิ่มเติมเกี่ยวกับ การใช้แอตทริบิวต์ เพื่อตรวจสอบข้อมูลประสิทธิภาพ

  • เรียนรู้เพิ่มเติมเกี่ยวกับวิธี ติดตามปัญหาด้านประสิทธิภาพ ในคอนโซล Firebase

  • ตั้งค่าการแจ้งเตือน สำหรับการเปลี่ยนแปลงโค้ดที่ลดประสิทธิภาพของแอปของคุณ ตัวอย่างเช่น คุณสามารถกำหนดค่าการแจ้งเตือนทางอีเมลสำหรับทีมของคุณ หาก ระยะเวลา ของการติดตามโค้ดที่กำหนดเองนั้นเกินเกณฑ์ที่คุณกำหนดไว้

  • ดูรายงานโดยละเอียดของ เซสชันผู้ใช้ ซึ่งคุณสามารถดูการติดตามที่เจาะจงในบริบทของไทม์ไลน์ของการติดตามอื่นๆ ที่รวบรวมระหว่างเซสชันเดียวกันได้
ตัวยึดตำแหน่ง121