Performance Monitoring รวบรวมการติดตามเพื่อช่วยคุณตรวจสอบประสิทธิภาพของแอป การติดตามคือรายงานข้อมูลประสิทธิภาพที่บันทึกจาก 2 ช่วงเวลาในแอปของคุณ
คุณสร้างการติดตามของคุณเองเพื่อตรวจสอบข้อมูลประสิทธิภาพที่เชื่อมโยงกับโค้ดที่เจาะจงในแอปได้ เมื่อใช้การติดตามโค้ดที่กำหนดเอง คุณจะวัดระยะเวลาที่แอปใช้ทำงานหรือชุดงานให้เสร็จสิ้นได้ เช่น การโหลดชุดรูปภาพหรือค้นหาฐานข้อมูล
เมตริกเริ่มต้นสำหรับการติดตามโค้ดที่กำหนดเองคือ "ระยะเวลา" (ระยะเวลาระหว่างจุดเริ่มต้นและจุดที่หยุดของการติดตาม) แต่คุณสามารถเพิ่มเมตริกที่กำหนดเองได้เช่นกัน
ในโค้ด คุณจะกําหนดจุดเริ่มต้นและจุดสิ้นสุดของการติดตามโค้ดที่กําหนดเองได้โดยใช้ API ที่ Performance Monitoring SDK มีให้ การติดตามโค้ดที่กําหนดเองสามารถเริ่มได้ทุกเมื่อหลังจากสร้าง และจะไม่มีปัญหาเกี่ยวกับเธรด
เนื่องจากเมตริกเริ่มต้นที่รวบรวมสําหรับร่องรอยเหล่านี้คือ "ระยะเวลา" ร่องรอยเหล่านี้จึงบางครั้งเรียกว่า "ร่องรอยระยะเวลา"
คุณสามารถดูข้อมูลจากการติดตามเหล่านี้ได้ในแท็บย่อยการติดตามที่กำหนดเองของตารางการติดตามซึ่งอยู่ที่ด้านล่างของหน้าแดชบอร์ดประสิทธิภาพ (ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้คอนโซลในภายหลังในหน้านี้)
แอตทริบิวต์เริ่มต้น แอตทริบิวต์ที่กำหนดเอง และเมตริกที่กำหนดเอง
สำหรับการติดตามโค้ดที่กำหนดเอง Performance Monitoring จะบันทึก แอตทริบิวต์เริ่มต้น (ข้อมูลเมตาทั่วไป เช่น เวอร์ชันของแอป ประเทศ อุปกรณ์ ฯลฯ) เพื่อให้คุณกรองข้อมูลสำหรับการติดตามในคอนโซล Firebase ได้ นอกจากนี้ คุณยังเพิ่มและตรวจสอบแอตทริบิวต์ที่กําหนดเอง (เช่น ระดับเกมหรือพร็อพเพอร์ตี้ผู้ใช้) ได้ด้วยคุณกำหนดค่าการติดตามโค้ดที่กำหนดเองเพิ่มเติมเพื่อบันทึกเมตริกที่กำหนดเองสำหรับเหตุการณ์ที่เกี่ยวข้องกับประสิทธิภาพซึ่งเกิดขึ้นภายในขอบเขตของการติดตามได้ ตัวอย่างเช่น คุณสามารถสร้างเมตริกที่กำหนดเองสำหรับจำนวนการพบแคชและไม่พบแคช หรือจำนวนครั้งที่ UI ไม่ตอบสนองในระยะเวลาที่เห็นได้ชัด
แอตทริบิวต์ที่กำหนดเองและเมตริกที่กำหนดเองจะแสดงในคอนโซล Firebase ควบคู่ไปกับแอตทริบิวต์เริ่มต้นและเมตริกเริ่มต้นสำหรับการติดตาม
เพิ่มการติดตามโค้ดที่กำหนดเอง
ใช้ Performance Monitoring Trace API (Swift | Obj-C) เพื่อเพิ่มการติดตามโค้ดที่กำหนดเองเพื่อตรวจสอบโค้ดของแอปพลิเคชันที่เฉพาะเจาะจง
โปรดทราบดังต่อไปนี้
- แอปหนึ่งๆ มีการติดตามโค้ดที่กําหนดเองได้หลายรายการ
- การเรียกใช้โค้ดที่กำหนดเองมากกว่า 1 รายการได้พร้อมกัน
- ชื่อของการติดตามโค้ดที่กำหนดเองต้องเป็นไปตามข้อกำหนดต่อไปนี้
ไม่มีช่องว่างนำหน้าหรือต่อท้าย ไม่มีขีดล่าง (
_
) และความยาวสูงสุดคือ 100 อักขระ - การติดตามโค้ดที่กำหนดเองรองรับการเพิ่มเมตริกที่กำหนดเองและแอตทริบิวต์ที่กำหนดเอง
หากต้องการเริ่มและหยุดการติดตามโค้ดที่กําหนดเอง ให้ตัดโค้ดที่ต้องการติดตามด้วยบรรทัดโค้ดที่คล้ายกับตัวอย่างต่อไปนี้
Swift
// 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()
Objective-C
// 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 เมตริก (รวมถึงเมตริกระยะเวลาเริ่มต้น)
หากต้องการเพิ่มเมตริกที่กำหนดเอง ให้เพิ่มบรรทัดของโค้ดที่คล้ายกับบรรทัดต่อไปนี้ทุกครั้งที่เกิดเหตุการณ์ขึ้น ตัวอย่างเช่น เมตริกที่กําหนดเองนี้จะนับเหตุการณ์ที่เกี่ยวข้องกับประสิทธิภาพที่เกิดขึ้นในแอป เช่น การ Hit แคชหรือการลองอีกครั้ง
Swift
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()
Objective-C
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 อักขระ
- อักขระที่อนุญาตสำหรับชื่อ ได้แก่
A-Z
,a-z
และ_
- ไม่มีช่องว่างนำหน้าหรือต่อท้าย ไม่มีอักขระขีดล่าง (
การติดตามโค้ดที่กำหนดเองแต่ละรายการบันทึกแอตทริบิวต์ที่กำหนดเองได้สูงสุด 5 รายการ
โปรดตรวจสอบว่าแอตทริบิวต์ที่กำหนดเองไม่มีข้อมูลที่ระบุตัวตนของบุคคลหนึ่งๆ ให้ Google ทราบ
ดูข้อมูลเพิ่มเติมเกี่ยวกับหลักเกณฑ์นี้
Swift
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;
Objective-C
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 จากนั้นเลื่อนลงไปที่ตารางการติดตาม แล้วคลิกแท็บย่อยที่เหมาะสม ตารางจะแสดงเมตริกอันดับต้นๆ สำหรับการติดตามแต่ละรายการ และคุณยังจัดเรียงรายการตามเปอร์เซ็นต์การเปลี่ยนแปลงของเมตริกที่เฉพาะเจาะจงได้อีกด้วย
Performance Monitoring มีหน้าการแก้ปัญหาในคอนโซล Firebase ที่ไฮไลต์การเปลี่ยนแปลงของเมตริก ซึ่งช่วยให้คุณแก้ไขปัญหาได้อย่างรวดเร็วและลดผลกระทบของปัญหาด้านประสิทธิภาพต่อแอปและผู้ใช้ คุณสามารถใช้หน้าการแก้ปัญหาเมื่อทราบเกี่ยวกับปัญหาด้านประสิทธิภาพที่อาจเกิดขึ้น เช่น ในสถานการณ์ต่อไปนี้
- คุณเลือกเมตริกที่เกี่ยวข้องในแดชบอร์ด และสังเกตเห็นการเปลี่ยนแปลงครั้งใหญ่
- ในตารางการติดตาม คุณจัดเรียงเพื่อแสดงค่าเดลต้าที่ใหญ่ที่สุดที่ด้านบน และคุณจะเห็นการเปลี่ยนแปลงเปอร์เซ็นต์ที่สำคัญ
- คุณจะได้รับการแจ้งเตือนทางอีเมลเกี่ยวกับปัญหาด้านประสิทธิภาพ
คุณเข้าถึงหน้าการแก้ปัญหาได้ด้วยวิธีต่อไปนี้
- ในหน้าแดชบอร์ดเมตริก ให้คลิกปุ่มดูรายละเอียดเมตริก
- ในการ์ดเมตริกใดก็ได้ ให้เลือก
หน้าการแก้ปัญหาจะแสดงข้อมูลเกี่ยวกับเมตริกที่คุณเลือก => ดูรายละเอียด - ในตารางการติดตาม ให้คลิกชื่อการติดตามหรือค่าเมตริกใดก็ได้ในแถวที่เชื่อมโยงกับการติดตามนั้น
- คลิกตรวจสอบเลยในการแจ้งเตือนทางอีเมล
เมื่อคลิกที่ชื่อการติดตามในตารางการติดตาม คุณจะเจาะลึกลงไปในเมตริกที่สนใจได้ คลิกปุ่ม
- กรองตามเวอร์ชันแอปเพื่อดูข้อมูลเกี่ยวกับรุ่นที่ผ่านมาหรือรุ่นล่าสุด
- กรองตามอุปกรณ์เพื่อดูวิธีที่อุปกรณ์รุ่นเก่าจัดการแอปของคุณ
- กรองตามประเทศเพื่อให้แน่ใจว่าตำแหน่งฐานข้อมูลไม่ได้ส่งผลกระทบต่อภูมิภาคที่เฉพาะเจาะจง
ดูข้อมูลเพิ่มเติมเกี่ยวกับการดูข้อมูลร่องรอย
ขั้นตอนถัดไป
ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้แอตทริบิวต์เพื่อดูข้อมูลประสิทธิภาพ
ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีติดตามปัญหาด้านประสิทธิภาพในคอนโซล Firebase
ตั้งค่าการแจ้งเตือนสำหรับการเปลี่ยนแปลงโค้ดที่ทําให้ประสิทธิภาพของแอปลดลง เช่น คุณสามารถกําหนดค่าการแจ้งเตือนทางอีเมลสําหรับทีมได้หากระยะเวลาของการติดตามโค้ดที่กําหนดเองหนึ่งๆ นานเกินเกณฑ์ที่คุณกําหนด
- ดูรายงานโดยละเอียดของเซสชันผู้ใช้ที่คุณดูการติดตามที่เจาะจงได้ในบริบทของการติดตามในไทม์ไลน์ของการติดตามอื่นๆ ที่รวบรวมในระหว่างเซสชันเดียวกัน