บันทึกการติดตามของระบบในอุปกรณ์

อุปกรณ์ที่ใช้ Android 9 (ระดับ API 28) ขึ้นไปจะมีแอปที่ระดับระบบชื่อ System Tracing แอปนี้คล้ายกับยูทิลิตีบรรทัดคำสั่ง systrace แต่ แอปนี้ช่วยให้คุณบันทึกการติดตามจากอุปกรณ์ทดสอบได้โดยตรงโดยไม่ต้อง เสียบอุปกรณ์และเชื่อมต่อกับอุปกรณ์ผ่าน adb จากนั้นคุณสามารถใช้แอปเพื่อแชร์ผลลัพธ์จากการติดตามเหล่านี้กับทีมพัฒนาได้

อุปกรณ์ที่ใช้ Android 10 ขึ้นไปจะบันทึกการติดตามในรูปแบบ Perfetto ส่วนอุปกรณ์รุ่นก่อนหน้าจะบันทึกในรูปแบบ Systrace เราขอแนะนำให้ใช้เครื่องมือดูการติดตาม Perfetto เพื่อเปิดทั้ง 2 รูปแบบ แล้ว วิเคราะห์การติดตาม

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

บันทึกการติดตามระบบ

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

บันทึกโดยใช้การ์ดการตั้งค่าด่วน

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

ตั้งค่าการ์ด

หากคุณใช้ System Tracing ในอุปกรณ์ทดสอบเป็นครั้งแรก หรือหากไม่เห็นการ์ดSystem Tracing ในแผงการตั้งค่าด่วน ของอุปกรณ์ ดังที่แสดงในรูปที่ 2 ให้ทำตามขั้นตอนการตั้งค่าต่อไปนี้

  1. เปิดใช้ตัวเลือกสำหรับนักพัฒนาซอฟต์แวร์
  2. เปิดหน้าจอการตั้งค่าตัวเลือกสำหรับนักพัฒนาซอฟต์แวร์
  3. ในส่วนการแก้ไขข้อบกพร่อง ให้เลือกSystem Tracing แอป System Tracing จะเปิดขึ้นและแสดงเมนูแอป
  4. จากเมนูแอป ให้เปิดใช้แสดงการ์ดการตั้งค่าด่วน ดังที่แสดงในรูปที่ 1 ระบบจะเพิ่มการ์ดSystem Tracing ลงในแผงการตั้งค่าด่วน ดังที่แสดงในรูปที่ 2

    รูปที่ 1 สวิตช์แสดงการ์ดการตั้งค่าด่วน ใน แอป System Tracing
    รูปที่ 2 การ์ดSystem Tracing ภายในแผง การตั้งค่าด่วน

    หมายเหตุ: โดยค่าเริ่มต้น ระบบจะเพิ่มการ์ดSystem Tracing เป็นการ์ดแรกในแผงการตั้งค่าด่วน หากต้องการให้การ์ดปรากฏในตำแหน่งอื่น ให้ใช้โหมดแก้ไขของแผงเพื่อย้ายการ์ด

บันทึกการติดตามระบบให้เสร็จสมบูรณ์

หากต้องการบันทึกการติดตามระบบโดยใช้แผงการตั้งค่าด่วน ให้ทำตามขั้นตอนต่อไปนี้

  1. แตะการ์ดSystem Tracing ซึ่งมีป้ายกำกับว่าบันทึกการติดตาม การ์ดจะเปิดใช้ และการแจ้งเตือนแบบถาวรจะปรากฏขึ้นเพื่อแจ้งให้คุณทราบว่าระบบกำลังบันทึกการติดตาม ดังที่แสดงในรูปที่ 3

    การแจ้งเตือนพร้อมข้อความ "ระบบกำลังบันทึกการติดตาม" แตะเพื่อหยุด
  การติดตาม'
    รูปที่ 3 การแจ้งเตือนแบบถาวรที่ปรากฏขึ้นหลังจาก เริ่มการติดตามระบบในอุปกรณ์
  2. ดำเนินการในแอปที่ต้องการให้ระบบตรวจสอบ

  3. หยุดการติดตามโดยแตะการ์ดSystem Tracing ในแผงการตั้งค่าด่วน หรือในการแจ้งเตือน System Tracing

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

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

บันทึกโดยใช้เมนูแอป

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

หากต้องการบันทึก System Tracing โดยใช้เมนูแอป System Tracing ให้ทำตามขั้นตอนต่อไปนี้

  1. เปิดใช้ตัวเลือกสำหรับนักพัฒนาซอฟต์แวร์
  2. เปิดหน้าจอการตั้งค่าตัวเลือกสำหรับนักพัฒนาซอฟต์แวร์ ในส่วนการแก้ไขข้อบกพร่อง ให้เลือกSystem Tracing แอป System Tracing จะเปิดขึ้น

    หรือหากตั้งค่าการ์ดSystem Tracingไว้ คุณสามารถแตะการ์ดค้างไว้เพื่อเข้าสู่แอป System Tracing

  3. ตรวจสอบว่าได้เลือกติดตามแอปพลิเคชันที่แก้ไขข้อบกพร่องได้ เพื่อรวมแอปที่เปิดใช้การแก้ไขข้อบกพร่องในการติดตามระบบ

  4. เลือกหมวดหมู่ ของการเรียกใช้ระบบและเซ็นเซอร์ที่จะติดตาม และเลือกขนาดบัฟเฟอร์ต่อ CPU เป็น KB (ไม่บังคับ) เลือกหมวดหมู่ที่สอดคล้องกับกรณีการใช้งานที่คุณกำลังทดสอบ เช่น หมวดหมู่เสียง สำหรับการทดสอบการทำงานของบลูทูธ หรือหมวดหมู่หน่วยความจำ สำหรับการจัดสรรฮีป

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

  6. เปิดใช้สวิตช์บันทึกการติดตาม ซึ่งไฮไลต์ไว้ในรูปที่ 5 การ์ดจะเปิดใช้ และ การแจ้งเตือนแบบถาวรจะปรากฏขึ้นเพื่อแจ้งให้คุณทราบว่าระบบ กำลังบันทึกการติดตาม ดังที่แสดงใน รูปที่ 3

    รูปที่ 5 สวิตช์บันทึกการติดตาม ในการตั้งค่าการติดตามระบบ
  7. ดำเนินการในแอปที่ต้องการให้ระบบตรวจสอบ

  8. หยุดการติดตามโดยปิดใช้สวิตช์บันทึกการติดตาม

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

แชร์การติดตามระบบ

แอป System Tracing ช่วยให้คุณแชร์ผลลัพธ์ System Tracing เป็นส่วนหนึ่งของเวิร์กโฟลว์ต่างๆ ได้ ในอุปกรณ์ที่ใช้ Android 10 (ระดับ API 29) ขึ้นไป ระบบจะบันทึกไฟล์การติดตาม ด้วยนามสกุลไฟล์ .perfetto-trace และเปิดได้ ใน UI ของ Perfetto ในอุปกรณ์ที่ใช้ Android เวอร์ชันก่อนหน้า ระบบจะบันทึกไฟล์การติดตามด้วยนามสกุลไฟล์ .ctrace ซึ่งระบุรูปแบบ Systrace

แชร์เป็นข้อความ

System Tracing ช่วยให้คุณแชร์การติดตามที่รวบรวมไว้กับแอปอื่นๆ ในอุปกรณ์ได้ คุณสามารถส่งการติดตามไปยังทีมพัฒนาผ่านอีเมลหรือแอปติดตามข้อบกพร่องโดยไม่ต้องเชื่อมต่ออุปกรณ์กับคอมพิวเตอร์สำหรับการพัฒนาซอฟต์แวร์

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

แชร์จากแอป Files

ในอุปกรณ์ที่ใช้ Android 10 (ระดับ API 29) ขึ้นไป การติดตามจะแสดงในแอป Files คุณสามารถแชร์การติดตามจากแอปนี้ได้

ดาวน์โหลดรายงานโดยใช้ ADB

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

cd /path-to-traces-on-my-dev-machine && \
  adb pull /data/local/traces/ .

แปลงระหว่างรูปแบบการติดตาม

คุณสามารถแปลงไฟล์การติดตาม Perfetto เป็นรูปแบบ Systrace ได้ ดูข้อมูลเพิ่มเติมได้ที่ การแปลง ระหว่างรูปแบบการติดตาม

สร้างรายงาน HTML

เมื่อแชร์การติดตาม ตัวรายงานเองจะอยู่ในไฟล์ .perfetto-trace ในอุปกรณ์ที่ใช้ Android 10 ขึ้นไป หรือไฟล์ .ctrace สำหรับเวอร์ชันอื่นๆ ทั้งหมด

สร้างรายงาน HTML จากไฟล์การย้ายข้อมูลโดยใช้ UI บนเว็บ หรือ จาก บรรทัดคำสั่ง

UI บนเว็บ

ใช้ UI ของ Perfetto เพื่อเปิด ไฟล์การติดตามและสร้างรายงาน

สำหรับไฟล์ Perfetto ให้คลิกเปิดไฟล์การย้ายข้อมูล สำหรับไฟล์ Systrace ให้คลิกเปิดด้วย UI แบบเดิม UI แบบเดิมจะมีลักษณะและรูปแบบเหมือนกับ รายงาน Systrace

บรรทัดคำสั่ง

เรียกใช้คำสั่งต่อไปนี้ในหน้าต่างเทอร์มินัลเพื่อสร้างรายงาน HTML จากไฟล์การย้ายข้อมูล

cd /path-to-traces-on-my-dev-machine && \
  systrace --from-file trace-file-name{.ctrace | .perfetto-trace}

หากยังไม่มีโปรแกรมบรรทัดคำสั่ง systrace คุณสามารถดาวน์โหลด ได้จาก โปรเจ็กต์ Catapult ใน GitHub หรือจาก Android Open Source Project โดยตรง