การตรวจสอบประสิทธิภาพจะรวบรวมร่องรอยเพื่อช่วยคุณตรวจสอบประสิทธิภาพของแอป ร่องรอยคือรายงานข้อมูลประสิทธิภาพที่บันทึกไว้ระหว่าง 2 จุดในเวลาที่แอปทำงาน
คุณสามารถสร้างการติดตามของคุณเองเพื่อตรวจสอบข้อมูลประสิทธิภาพที่เชื่อมโยงกับโค้ดที่เฉพาะเจาะจงในแอปได้ การติดตามโค้ดที่กําหนดเองช่วยให้คุณวัดระยะเวลาที่แอปใช้ในการทํางานหนึ่งๆ หรือชุดงานให้เสร็จสมบูรณ์ได้ เช่น การโหลดชุดรูปภาพหรือการค้นหาฐานข้อมูล
เมตริกเริ่มต้นสำหรับการติดตามโค้ดที่กําหนดเองคือ "ระยะเวลา" (ช่วงเวลาระหว่างจุดเริ่มต้นและจุดสิ้นสุดของการติดตาม) แต่คุณก็เพิ่มเมตริกที่กําหนดเองได้ด้วย
ในโค้ด คุณจะกําหนดจุดเริ่มต้นและจุดสิ้นสุดของการติดตามโค้ดที่กําหนดเองได้โดยใช้ API ที่ Performance Monitoring SDK มีให้
การติดตามโค้ดที่กําหนดเองจะเริ่มได้ทุกเมื่อหลังจากสร้าง และจะไม่มีปัญหาเกี่ยวกับเธรด
เนื่องจากเมตริกเริ่มต้นที่รวบรวมสําหรับร่องรอยเหล่านี้คือ "ระยะเวลา" ร่องรอยเหล่านี้จึงบางครั้งเรียกว่า "ร่องรอยระยะเวลา"
คุณสามารถดูข้อมูลจากร่องรอยเหล่านี้ในแท็บย่อยร่องรอยที่กําหนดเองของตารางร่องรอย ซึ่งอยู่ที่ด้านล่างของแดชบอร์ดประสิทธิภาพ (ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้คอนโซลในหน้านี้ในภายหลัง)
แอตทริบิวต์เริ่มต้น แอตทริบิวต์ที่กําหนดเอง และเมตริกที่กําหนดเอง
สําหรับการติดตามโค้ดที่กําหนดเอง การตรวจสอบประสิทธิภาพจะบันทึกแอตทริบิวต์เริ่มต้นโดยอัตโนมัติ (ข้อมูลเมตาทั่วไป เช่น เวอร์ชันแอป ประเทศ อุปกรณ์ ฯลฯ) เพื่อให้คุณกรองข้อมูลการติดตามในคอนโซล Firebase ได้ นอกจากนี้ คุณยังเพิ่มและตรวจสอบแอตทริบิวต์ที่กําหนดเอง (เช่น ระดับเกมหรือพร็อพเพอร์ตี้ผู้ใช้) ได้ด้วย
คุณสามารถกําหนดค่าการติดตามโค้ดที่กําหนดเองเพิ่มเติมเพื่อบันทึกเมตริกที่กําหนดเองสําหรับเหตุการณ์ที่เกี่ยวข้องกับประสิทธิภาพซึ่งเกิดขึ้นภายในขอบเขตของการติดตาม เช่น คุณสามารถสร้างเมตริกที่กําหนดเองสําหรับจํานวนการ Hit และ Miss ของแคช หรือจํานวนครั้งที่ UI ไม่ตอบสนองเป็นระยะเวลาหนึ่ง
แอตทริบิวต์และเมตริกที่กําหนดเองจะแสดงในคอนโซล Firebase ควบคู่ไปกับแอตทริบิวต์เริ่มต้นและเมตริกเริ่มต้นของการติดตาม
เพิ่มการติดตามโค้ดที่กําหนดเอง
ใช้ Performance Monitoring Trace API เพื่อเพิ่มการติดตามโค้ดที่กําหนดเองเพื่อตรวจสอบโค้ดแอปพลิเคชันที่ต้องการ
โปรดทราบดังต่อไปนี้
- แอปหนึ่งๆ มีการติดตามโค้ดที่กําหนดเองได้หลายรายการ
- การติดตามโค้ดที่กําหนดเองสามารถทํางานพร้อมกันได้มากกว่า 1 รายการ
- ชื่อการติดตามโค้ดที่กำหนดเองต้องเป็นไปตามข้อกำหนดต่อไปนี้
ไม่มีอักขระช่องว่างนำหน้าหรือตามหลัง ไม่มีอักขระขีดล่าง (
_
) นำหน้า และความยาวสูงสุดคือ 100 อักขระ - การติดตามโค้ดที่กําหนดเองรองรับการเพิ่มเมตริกที่กําหนดเองและแอตทริบิวต์ที่กําหนดเอง
หากต้องการเริ่มและหยุดการติดตามโค้ดที่กําหนดเอง ให้ตัดโค้ดที่ต้องการติดตามด้วยโค้ดที่คล้ายกับโค้ดต่อไปนี้
Trace customTrace = FirebasePerformance.instance.newTrace('custom-trace');
await customTrace.start();
// Code you want to trace
await customTrace.stop();
เพิ่มเมตริกที่กําหนดเองลงในร่องรอยโค้ดที่กําหนดเอง
ใช้ Performance Monitoring Trace API เพื่อเพิ่มเมตริกที่กําหนดเองในการติดตามโค้ดที่กําหนดเอง
โปรดทราบดังต่อไปนี้
- ชื่อเมตริกที่กําหนดเองต้องเป็นไปตามข้อกําหนดต่อไปนี้ ไม่มีอักขระช่องว่างขึ้นต้นหรือต่อท้าย ไม่มีอักขระขีดล่าง (
_
) ขึ้นต้น และความยาวสูงสุดคือ 100 อักขระ - การติดตามโค้ดที่กําหนดเองแต่ละรายการจะบันทึกเมตริกได้สูงสุด 32 รายการ (รวมถึงเมตริกระยะเวลาเริ่มต้น)
หากต้องการเพิ่มเมตริกที่กําหนดเอง ให้เพิ่มบรรทัดโค้ดที่คล้ายกับตัวอย่างต่อไปนี้ทุกครั้งที่เกิดเหตุการณ์ ตัวอย่างเช่น เมตริกที่กําหนดเองนี้จะนับเหตุการณ์ที่เกี่ยวข้องกับประสิทธิภาพที่เกิดขึ้นในแอป เช่น การ Hit แคชหรือการลองอีกครั้ง
Trace customTrace = FirebasePerformance.instance.newTrace("custom-trace");
await customTrace.start();
// Code you want to trace
customTrace.incrementMetric("metric-name", 1);
// More code
await customTrace.stop();
สร้างแอตทริบิวต์ที่กำหนดเองสำหรับการติดตามโค้ดที่กำหนดเอง
หากต้องการใช้แอตทริบิวต์ที่กําหนดเอง ให้เพิ่มโค้ดลงในแอปที่กําหนดแอตทริบิวต์และเชื่อมโยงกับร่องรอยโค้ดที่กําหนดเองที่เฉพาะเจาะจง คุณสามารถตั้งค่าแอตทริบิวต์ที่กำหนดเองได้ทุกเมื่อระหว่างที่การติดตามเริ่มต้นและสิ้นสุด
โปรดทราบดังต่อไปนี้
ชื่อแอตทริบิวต์ที่กำหนดเองต้องเป็นไปตามข้อกำหนดต่อไปนี้ ไม่มีอักขระเว้นวรรคนำหน้าหรือตามหลัง ไม่มีอักขระขีดล่าง (
_
) นำหน้า และความยาวสูงสุดคือ 32 อักขระการติดตามโค้ดที่กําหนดเองแต่ละรายการจะบันทึกแอตทริบิวต์ที่กําหนดเองได้สูงสุด 5 รายการ
คุณไม่ควรใช้แอตทริบิวต์ที่กำหนดเองซึ่งมีข้อมูลที่ระบุตัวบุคคลต่อ Google
Trace trace = FirebasePerformance.instance.newTrace("test_trace");
// Update scenario.
trace.putAttribute("experiment", "A");
// Reading scenario.
String? experimentValue = trace.getAttribute("experiment");
// Delete scenario.
trace.removeAttribute("experiment");
// Read attributes.
Map<String, String> traceAttributes = trace.getAttributes();
ติดตาม ดู และกรองข้อมูลประสิทธิภาพ
ติดตามเมตริกที่เฉพาะเจาะจงในหน้าแดชบอร์ด
หากต้องการดูแนวโน้มของเมตริกหลัก ให้เพิ่มเมตริกเหล่านั้นลงในบอร์ดเมตริกที่ด้านบนของแดชบอร์ดประสิทธิภาพ คุณสามารถระบุการถดถอยได้อย่างรวดเร็วโดยดูการเปลี่ยนแปลงในแต่ละสัปดาห์ หรือตรวจสอบว่าการเปลี่ยนแปลงล่าสุดในโค้ดช่วยปรับปรุงประสิทธิภาพได้
หากต้องการเพิ่มเมตริกลงในบอร์ดเมตริก ให้ไปที่หน้าแดชบอร์ดประสิทธิภาพในคอนโซล Firebase แล้วคลิกแท็บหน้าแดชบอร์ด คลิกการ์ดเมตริกว่าง แล้วเลือกเมตริกที่มีอยู่เพื่อเพิ่มลงในบอร์ด คลิกเครื่องหมายจุดแนวตั้ง (⋮) บนการ์ดเมตริกที่สร้างขึ้นเพื่อดูตัวเลือกเพิ่มเติม เช่น แทนที่หรือนําเมตริกออก
บอร์ดเมตริกจะแสดงข้อมูลเมตริกที่รวบรวมเมื่อเวลาผ่านไป ทั้งในรูปแบบกราฟิกและการเปลี่ยนแปลงเป็นเปอร์เซ็นต์ตัวเลข
ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้แดชบอร์ด
ดูร่องรอยและข้อมูลร่องรอย
หากต้องการดูการติดตาม ให้ไปที่แดชบอร์ดประสิทธิภาพในคอนโซล Firebase เลื่อนลงไปที่ตารางการติดตาม แล้วคลิกแท็บย่อยที่เหมาะสม ตารางจะแสดงเมตริกยอดนิยมบางรายการของการติดตามแต่ละรายการ และคุณยังจัดเรียงรายการตามเปอร์เซ็นต์การเปลี่ยนแปลงของเมตริกที่เฉพาะเจาะจงได้ด้วย
หากคลิกชื่อการติดตามในตารางการติดตาม คุณจะคลิกผ่านหน้าจอต่างๆ เพื่อสำรวจการติดตามและเจาะลึกเมตริกที่สนใจได้ ในหน้าส่วนใหญ่ คุณสามารถใช้ปุ่มกรอง (ด้านซ้ายบนของหน้าจอ) เพื่อกรองข้อมูลตามแอตทริบิวต์ เช่น
- กรองตามเวอร์ชันแอปเพื่อดูข้อมูลเกี่ยวกับรุ่นที่ผ่านมาหรือรุ่นล่าสุด
- กรองตามอุปกรณ์เพื่อดูวิธีที่อุปกรณ์รุ่นเก่าจัดการแอปของคุณ
- กรองตามประเทศเพื่อให้แน่ใจว่าตำแหน่งฐานข้อมูลไม่ได้ส่งผลกระทบต่อภูมิภาคที่เจาะจง
ดูข้อมูลเพิ่มเติมเกี่ยวกับการดูข้อมูลการติดตาม
ขั้นตอนถัดไป
ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้แอตทริบิวต์เพื่อตรวจสอบข้อมูลประสิทธิภาพ
ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีติดตามปัญหาด้านประสิทธิภาพในคอนโซล Firebase
ตั้งค่าการแจ้งเตือนสำหรับการเปลี่ยนแปลงโค้ดที่ทําให้ประสิทธิภาพของแอปลดลง เช่น คุณสามารถกําหนดค่าการแจ้งเตือนทางอีเมลสําหรับทีมได้หากระยะเวลาของการติดตามโค้ดที่กําหนดเองหนึ่งๆ นานเกินเกณฑ์ที่คุณกําหนด