Tổng quan về tính năng theo dõi hệ thống

Việc ghi lại hoạt động trên thiết bị trong một khoảng thời gian ngắn được gọi là theo dõi hệ thống. Công cụ Theo dõi hệ thống sẽ tạo một tệp theo dõi mà bạn có thể dùng để tạo báo cáo hệ thống. Báo cáo này giúp bạn xác định cách tốt nhất để cải thiện hiệu suất của ứng dụng hoặc trò chơi.

Để tìm hiểu hướng dẫn đầy đủ về cách theo dõi và lập hồ sơ, hãy xem trang Theo dõi 101 trong tài liệu về Perfetto.

Nền tảng Android cung cấp một số tuỳ chọn để ghi lại dấu vết:

  • Trình phân tích CPU và bộ nhớ của Android Studio
  • Công cụ dòng lệnh Perfetto (Android 10 trở lên)
  • Tiện ích theo dõi hệ thống
  • Công cụ dòng lệnh Systrace

Trình phân tích CPU Android Studio kiểm tra mức sử dụng CPU và hoạt động của luồng trong ứng dụng theo thời gian thực khi bạn tương tác với ứng dụng của mình. Bạn cũng có thể kiểm tra chi tiết trong dấu vết phương thức, dấu vết hàm và dấu vết hệ thống được ghi lại. Trình phân tích bộ nhớ cung cấp thông tin tổng quan về mức sử dụng bộ nhớ liên quan đến các sự kiện chạm, thay đổi về Activity và sự kiện thu gom rác.

Perfetto là công cụ theo dõi trên toàn nền tảng được giới thiệu trong Android 10. Đây là một dự án theo dõi nguồn mở tinh vi cho hệ điều hành Android, Linux và Chrome. Công cụ này cung cấp một tập hợp gồm nhiều nguồn dữ liệu so với Systrace, đồng thời cho phép bạn ghi lại các dấu vết dài tuỳ ý trong luồng nhị phân của vùng đệm giao thức. Bạn có thể mở các dấu vết này trong Giao diện người dùng Perfetto.

Tiện ích Theo dõi hệ thống là một công cụ Android giúp lưu hoạt động của thiết bị vào một tệp theo dõi. Trên thiết bị chạy Android 10 (API cấp 29) trở lên, tệp theo dõi sẽ được lưu ở định dạng Perfetto, như minh hoạ ở phần sau của tài liệu này. Trên thiết bị chạy một phiên bản Android cũ, các tệp theo dõi sẽ được lưu ở định dạng Systrace.

Systrace là công cụ dòng lệnh cũ do nền tảng cung cấp, ghi lại hoạt động trên thiết bị trong một khoảng thời gian ngắn dưới dạng tệp văn bản nén. Công cụ này tạo ra một báo cáo kết hợp dữ liệu từ nhân hệ điều hành Android, chẳng hạn như bộ lập lịch CPU, hoạt động của ổ đĩa và luồng ứng dụng. Systrace hoạt động trên tất cả các phiên bản của nền tảng Android, nhưng bạn nên dùng Perfetto cho các thiết bị chạy Android 10 trở lên.

Chụp ảnh màn hình khung hiển thị dấu vết Perfetto

Hình 1. Khung hiển thị dấu vết Perfetto mẫu cho thấy khoảng 20 giây tương tác với một ứng dụng.

Chụp ảnh màn hình báo cáo Systrace

Hình 2. Báo cáo HTML Systrace mẫu, trong đó cho thấy 5 giây tương tác với một ứng dụng.

Cả hai báo cáo đều cung cấp thông tin tổng thể về các quy trình hệ thống của thiết bị Android trong một khoảng thời gian nhất định. Báo cáo này cũng kiểm tra thông tin theo dõi thu thập được để làm nổi bật các vấn đề mà báo cáo quan sát được, chẳng hạn như hiện tượng giật trên giao diện người dùng hoặc tình trạng tiêu thụ điện năng cao.

Perfetto và Systrace có thể tương tác với nhau:

Hướng dẫn theo dõi hệ thống

Để tìm hiểu thêm về công cụ theo dõi hệ thống, hãy xem các hướng dẫn sau:

Kiểm tra hoạt động của CPU bằng Trình phân tích CPU
Xem cách định cấu hình mức sử dụng CPU và hoạt động của luồng trong ứng dụng trên Android Studio.
Ghi lại dấu vết hệ thống trên một thiết bị
Giải thích cách ghi lại dấu vết hệ thống ngay trên bất kỳ thiết bị nào chạy Android 9 (API cấp 28) trở lên.
Ghi lại dấu vết hệ thống qua dòng lệnh
Xác định những tuỳ chọn và cờ khác nhau mà bạn có thể truyền vào giao diện dòng lệnh cho Systrace.
Chạy Perfetto bằng adb
Mô tả cách chạy công cụ dòng lệnh perfetto để ghi lại dấu vết.
Bắt đầu nhanh: Ghi lại dấu vết trên Android
Tài liệu bên ngoài mô tả cách xây dựng và chạy công cụ dòng lệnh perfetto để ghi lại dấu vết.
Bắt đầu nhanh: Ghi lại dấu vết trên Android
Trình xem dấu vết dựa trên nền tảng web Perfetto sẽ mở dấu vết Perfetto và hiển thị một báo cáo đầy đủ. Bạn cũng có thể mở dấu vết Systrace trong trình xem này bằng cách sử dụng tuỳ chọn giao diện người dùng cũ.
Sử dụng báo cáo Systrace
Liệt kê các yếu tố của một báo cáo điển hình, trình bày phím tắt để di chuyển qua báo cáo và mô tả cách xác định các loại vấn đề về hiệu suất.
Xác định sự kiện tuỳ chỉnh
Mô tả cách bạn có thể áp dụng nhãn tùy chỉnh cho các phần cụ thể trong mã, cho phép bạn phân tích nguyên nhân gốc rễ dễ dàng hơn trong Systrace hoặc Perfetto.