Mô-đun Statsd bao gồm statsd, một dịch vụ gốc chạy ở chế độ nền để thu thập các chỉ số và dịch vụ Java StatsCompanionService chạy trong quy trình hệ thống và kết nối statsd với Java. Bạn có thể cập nhật mô-đun này, tức là mô-đun này có thể nhận các bản cập nhật về chức năng (chẳng hạn như các bản cập nhật về chỉ số được dùng trong quá trình thu thập dữ liệu) bên ngoài chu kỳ phát hành Android thông thường.
Ranh giới mô-đun
Statsd là điểm tiếp xúc chính giữa nền tảng và quá trình thu thập dữ liệu về độ an toàn khi khởi chạy. Mô-đun statsd bao gồm mã sau.
statsd, nằm trongframeworks/base/cmds/statsdStatsCompanionService, nằm trongframeworks/base/services/core/java/com/android/server/stats/StatsCompanionService.javaMột tập hợp con của các cấu trúc protobuf nền tảng, chủ yếu nằm trong
frameworks/base/core/proto
Là một dịch vụ gốc, statsd có thể tồn tại lâu hơn khung và phát hiện lỗi trong chính system_server.
Trong Android 12, mã mô-đun Statsd được chuyển từ frameworks/base/cmds/StatsD, frameworks/base/apex/StatsD và system/core/libstats.
Cấu trúc dự án mới
system/core/libstats→packages/modules/StatsD/lib/libstatssystem/core/libstats/socket→packages/modules/StatsD/lib/libstatssocketsystem/core/libstats/pull→packages/modules/StatsD/lib/libstatspull
frameworks/base/cmds/StatsD→packages/modules/StatsD/binframeworks/base/apex/StatsD→- Sao chép cấp cao nhất như hiện tại
- Chuyển
jnivàoframework/jni - Chuyển các tệp cấp cao nhất vào thư mục
/apexframeworks/base/apex/StatsD/\*→packages/modules/StatsD/apex/\*frameworks/base/apex/StatsD/jni→packages/modules/StatsD/apex/framework/jni
cts/hostsidetests/StatsD→packages/modules/StatsD/tests
Lệnh mẫu di chuyển bản vá
Áp dụng các thay đổi cho các nhánh sau:
goog/mainline-prodgoog/maingoog/\*-plus-aospaosp/main
Nhật ký cho các tệp trong Statsd sẽ được giữ nguyên.
Định dạng mô-đun
Mô-đun statsd (com.android.os.statsd) ở định dạng
APEX và có sẵn cho các thiết bị
chạy Android 11 trở lên.
Phần phụ thuộc của mô-đun
Mô-đun Statsd trình bày một tập hợp các API @hide để ghi lại các sự kiện từ hệ thống. Đối với mã Java, hầu hết các API @hide đều được tái cấu trúc để xây dựng trên một tập hợp nhỏ hơn các phương thức được gắn thẻ @SystemApi, với một số mã kết dính nhỏ được tạo sẵn. Đối với mã gốc, các hàm gốc hiện có được tái cấu trúc để trở thành API VNDK C chính thức, với mã kết dính được tạo.
Tuỳ chỉnh
Mô-đun Statsd không hỗ trợ tuỳ chỉnh.
Thử nghiệm
Bộ kiểm tra tính tương thích (CTS) với Android sẽ xác minh chức năng của statsd và các atom mà hoạt động quản lý bản phát hành phụ thuộc vào.