Bạn có thể xuất dữ liệu Giám sát hiệu suất từ ứng dụng Apple và Android vào BigQuery để phân tích thêm. BigQuery cho phép bạn phân tích dữ liệu bằng BigQuery SQL, xuất dữ liệu sang nhà cung cấp đám mây khác và thậm chí sử dụng dữ liệu cho các mô hình ML tùy chỉnh của bạn.
Bật tính năng xuất BigQuery
Chuyển đến trang Tích hợp trong bảng điều khiển Firebase, sau đó nhấp vào Liên kết trong thẻ BigQuery .
Làm theo hướng dẫn trên màn hình để bật BigQuery.
Khi bạn bật tính năng xuất BigQuery để theo dõi hiệu suất, điều sau đây sẽ xảy ra:
Firebase xuất bản sao dữ liệu hiện có của bạn sang BigQuery. Quá trình truyền dữ liệu ban đầu để xuất có thể mất tối đa 48 giờ để hoàn thành.
- Bạn có thể lên lịch chèn lấp dữ liệu theo cách thủ công trong tối đa 30 ngày qua hoặc cho ngày gần đây nhất khi bạn bật tính năng xuất BigQuery (tùy theo ngày nào gần đây nhất).
Sau khi tập dữ liệu được tạo, bạn không thể thay đổi vị trí, nhưng bạn có thể sao chép tập dữ liệu sang một vị trí khác hoặc di chuyển (tạo lại) tập dữ liệu theo cách thủ công ở một vị trí khác. Để tìm hiểu thêm, hãy xem Thay đổi vị trí tập dữ liệu .
Firebase thiết lập đồng bộ hóa thường xuyên dữ liệu của bạn từ dự án Firebase sang BigQuery. Các hoạt động xuất hàng ngày này thường kết thúc sau 24 giờ kể từ khi được lên lịch.
Theo mặc định, tất cả ứng dụng trong dự án của bạn được liên kết với BigQuery. Mọi ứng dụng mà bạn thêm vào dự án sau này sẽ tự động được liên kết với BigQuery. Bạn có thể quản lý ứng dụng nào gửi dữ liệu .
Để hủy kích hoạt tính năng xuất BigQuery, hãy hủy liên kết dự án của bạn trong bảng điều khiển Firebase.
Dữ liệu nào được xuất sang BigQuery?
Đối với mỗi ứng dụng trong dự án, quá trình xuất sẽ tạo một bảng bao gồm tất cả các sự kiện hiệu suất đã ghi lại. Mỗi hàng trong bảng là một sự kiện hiệu suất duy nhất có thể là một trong các sự kiện sau:
Theo dõi thời lượng — theo mặc định, các dấu vết thu thập chỉ số "thời lượng", bao gồm bắt đầu ứng dụng, ứng dụng ở nền trước và ứng dụng ở chế độ nền, cũng như bất kỳ dấu vết mã tùy chỉnh nào do nhà phát triển công cụ cung cấp
-
event_type
làDURATION_TRACE
-
event_name
giống với tên theo dõi
-
Số liệu theo dõi — số liệu tùy chỉnh được liên kết với dấu vết mã tùy chỉnh do nhà phát triển công cụ cung cấp
-
event_type
làTRACE_METRIC
-
event_name
là tên của chỉ số -
parent_trace_name
là tên theo dõi có chứa số liệu này
-
Dấu vết màn hình — dấu vết kéo dài suốt thời gian tồn tại của màn hình (dấu vết kết xuất màn hình)
-
event_type
làSCREEN_TRACE
-
event_name
là tiền tố_st_
cộng với tên hiển thị thực tế
-
Yêu cầu mạng — dấu vết kéo dài thời gian tồn tại của yêu cầu mạng (dấu vết yêu cầu mạng HTTP)
-
event_type
làNETWORK_REQUEST
-
event_name
là mẫu được phân loại của URL yêu cầu mạng
-
Mỗi sự kiện hiệu suất chứa các thuộc tính của sự kiện (chẳng hạn như quốc gia và nhà mạng của thiết bị khách), cũng như thông tin dành riêng cho sự kiện:
- Dấu vết thời lượng, số liệu theo dõi và dấu vết màn hình chứa
trace_info
- Số liệu theo dõi chứa
trace_info.metric_info
- Dấu vết màn hình chứa
trace_info.screen_info
- Dấu vết mạng chứa
network_info
Lược đồ dữ liệu chi tiết
Tên trường | Kiểu | Sự miêu tả |
---|---|---|
event_timestamp | dấu thời gian | Dấu thời gian kể từ Epoch khi sự kiện bắt đầu trên thiết bị khách (bắt đầu theo dõi, bắt đầu mạng, v.v.) |
app_display_version | sợi dây | Phiên bản hiển thị của ứng dụng (ví dụ: "4.1.7")
|
app_build_version | sợi dây | Phiên bản xây dựng của ứng dụng (ví dụ: "1523456")
|
phiên bản của hệ điều hành | sợi dây | Phiên bản hệ điều hành của thiết bị khách
|
Tên thiết bị | sợi dây | Tên của thiết bị khách (ví dụ: "Google Pixel") |
quốc gia | sợi dây | Mã quốc gia gồm hai chữ cái của quốc gia nơi diễn ra sự kiện (ví dụ: "US" hoặc "ZZ" cho quốc gia không xác định) |
vận chuyển | sợi dây | Nhà cung cấp dịch vụ của thiết bị khách |
radio_type | sợi dây | Loại đài đang hoạt động khi sự kiện diễn ra (ví dụ: "WIFI") |
custom_attributes | Mảng<GHI> | Tất cả các thuộc tính tùy chỉnh được đính kèm với sự kiện này |
custom_attributes.key | sợi dây | Khóa của thuộc tính tùy chỉnh |
custom_attributes.value | sợi dây | Giá trị của thuộc tính tùy chỉnh |
loại sự kiện | sợi dây | Loại sự kiện; những giá trị khả thi:
|
event_name | sợi dây | Tên của sự kiện
|
parent_trace_name | sợi dây | Tên của dấu vết gốc mang số liệu theo dõi Chỉ hiện diện cho TRACE_METRIC |
dấu vết_thông tin | GHI | Chỉ hiện diện cho DURATION_TRACE , SCREEN_TRACE và TRACE_METRIC |
dấu vết_info.duration_us | int64 |
|
dấu vết_info.screen_info | GHI | Chỉ hiện diện cho SCREEN_TRACE |
trace_info.screen_info.slow_frame_ratio | phao64 | Tỷ lệ khung hình chậm cho theo dõi màn hình này, nằm trong khoảng từ 0 đến 1 (ví dụ: giá trị 0,05 có nghĩa là 5% số khung hình cho phiên bản màn hình này mất hơn 16 mili giây để kết xuất) |
trace_info.screen_info.frozen_frame_ratio | phao64 | Tỷ lệ khung hình cố định cho theo dõi màn hình này, nằm trong khoảng từ 0 đến 1 (ví dụ: giá trị 0,05 có nghĩa là 5% số khung hình cho phiên bản màn hình này mất hơn 700 mili giây để kết xuất) |
trace_info.metric_info | GHI | Chỉ hiện diện cho TRACE_METRIC |
trace_info.metric_info.metric_value | int64 | Giá trị của số liệu theo dõi |
thông tin mạng | GHI | Chỉ hiện diện cho NETWORK_REQUEST |
network_info.response_code | int64 | Mã phản hồi HTTP cho phản hồi mạng (ví dụ: 200, 404) |
network_info.response_mime_type | sợi dây | Loại MIME của phản hồi mạng (ví dụ: "text/html") |
mạng_info.request_http_method | sợi dây | Phương thức HTTP của yêu cầu mạng (ví dụ: "GET" hoặc "POST") |
network_info.request_payload_bytes | int64 | Kích thước của tải trọng yêu cầu mạng Đơn vị: byte |
network_info.response_payload_bytes | int64 | Kích thước của tải trọng phản hồi mạng Đơn vị: byte |
network_info.request_completed_time_us | int64 | Micro giây sau event_timestamp khi quá trình gửi yêu cầu mạng hoàn tấtĐơn vị: micro giây |
network_info.response_initiated_time_us | int64 | Micro giây sau event_timestamp khi bắt đầu phản hồi mạngĐơn vị: micro giây |
network_info.response_completed_time_us | int64 | Micro giây sau event_timestamp khi phản hồi mạng hoàn tấtĐơn vị: micro giây |
Bạn có thể làm gì với dữ liệu đã xuất?
Các phần sau đây cung cấp các ví dụ về truy vấn mà bạn có thể chạy trong BigQuery đối với dữ liệu Giám sát hiệu suất đã xuất của mình.
Xem thông tin chi tiết về độ trễ khởi động ứng dụng trung bình theo quốc gia
SELECT AVG(trace_info.duration_us), country FROM `TABLE_NAME` WHERE _PARTITIONTIME > TIMESTAMP("YYYY-MM-DD") AND event_type = "DURATION_TRACE" AND event_name = "_app_start" GROUP BY 2;
Kiểm tra tỷ lệ khung hình bị đóng băng trong các điều kiện khác nhau
Ví dụ: bạn có thể kiểm tra tỷ lệ khung hình bị treo cùng với lượng thời gian người dùng dành cho mỗi màn hình trong ứng dụng của bạn khi sử dụng các loại radio khác nhau (WiFi, 4G, v.v.).
SELECT AVG(trace_info.duration_us / 1000000) AS seconds_on_screen, AVG(trace_info.screen_info.frozen_frame_ratio) AS frozen_frame_ratio, event_name, radio_type FROM `TABLE_NAME` WHERE _PARTITIONTIME > TIMESTAMP("YYYY-MM-DD") AND event_type = "SCREEN_TRACE" GROUP BY event_name, radio_type ORDER BY event_name, radio_type;
Tính tốc độ truy cập bộ đệm để tải một số loại tệp nhất định từ đĩa
Phân tích này giả định rằng bạn đã tạo công cụ theo dõi mã tùy chỉnh để tải từ đĩa với một thuộc tính tùy chỉnh có tên là file-extension
và một chỉ số tùy chỉnh (một TRACE_METRIC
) có tên là cache-hit
được đặt thành 1
nếu lần truy cập bộ nhớ cache và 0
nếu lỗi bộ nhớ cache.
Ví dụ: bạn có thể tính tốc độ truy cập bộ đệm để tải các tệp PNG từ đĩa:
SELECT AVG(trace_info.metric_info.metric_value) AS cache_hit_rate FROM `TABLE_NAME` WHERE _PARTITIONTIME > TIMESTAMP("YYYY-MM-DD") AND event_type = "TRACE_METRIC" AND event_name = "cache-hit" AND parent_trace_name = "loadFromDisk" AND STRUCT("file-extension", "png") IN UNNEST(custom_attributes);
Kiểm tra thời gian trong ngày mà người dùng đưa ra yêu cầu mạng
Ví dụ: bạn có thể kiểm tra xem người dùng từ Hoa Kỳ gửi yêu cầu mạng từ ứng dụng của bạn vào giờ nào trong ngày:
SELECT count(1) AS hourly_count, EXTRACT(HOUR FROM event_timestamp) AS hour_of_day FROM `TABLE_NAME` WHERE _PARTITIONTIME > TIMESTAMP("YYYY-MM-DD") AND event_type = "NETWORK_REQUEST" AND country = "US" GROUP BY 2 ORDER BY 2;
Mang dữ liệu Giám sát hiệu suất của bạn đi bất cứ đâu
Đôi khi, bạn muốn truy cập phía máy chủ dữ liệu Giám sát hiệu suất của mình hoặc đẩy dữ liệu đó sang một giải pháp bên thứ ba khác. Hiện tại không tính phí xuất dữ liệu.
Bạn có thể xuất dữ liệu của mình bằng cách:
Sử dụng giao diện người dùng web BigQuery
Chạy lệnh CLI
bq extract
Gửi công việc trích xuất qua API hoặc thư viện ứng dụng khách.
định giá
Không tính phí xuất dữ liệu từ Giám sát hiệu suất và BigQuery cung cấp giới hạn sử dụng miễn phí hào phóng. Để biết thông tin chi tiết, hãy tham khảo giá BigQuery hoặc hộp cát BigQuery .