Bạn có thể xuất dữ liệu Giám sát hiệu suất từ ứng dụng Apple và Android sang 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 cho Giám sát 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 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 vòng 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 ở một vị trí khác theo cách thủ công. Để 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 với BigQuery. Các hoạt động xuất khẩu 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 đều được liên kết với BigQuery. Mọi ứng dụng mà sau này bạn thêm vào dự án 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 được 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 những sự kiện sau:
Theo dõi thời lượng — theo mặc định, các dấu vết thu thập số liệu về "thời lượng", bao gồm khởi động ứng dụng, ứng dụng trong nền trước và ứng dụng trong nền cũng như mọi dấu vết mã tùy chỉnh do nhà phát triển thiết kế
-
event_type
làDURATION_TRACE
-
event_name
giống với tên theo dõi
-
Chỉ số theo dõi — chỉ số 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 thiết kế
-
event_type
làTRACE_METRIC
-
event_name
là tên của số liệu -
parent_trace_name
là tên theo dõi 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 hiển thị màn hình)
-
event_type
làSCREEN_TRACE
-
event_name
là tiền tố_st_
cộng với tên màn hình thực tế
-
Yêu cầu mạng - dấu vết kéo dài suốt 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 biểu diễn chứa các thuộc tính của sự kiện (chẳng hạn như quốc gia và nhà cung cấp thiết bị khách), cũng như thông tin cụ thể về 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ả |
---|---|---|
sự kiện_timestamp | dấu thời gian | Dấu thời gian kể từ Kỷ nguyên 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.) |
ứng dụng_display_version | sợi dây | Phiên bản hiển thị của ứng dụng (ví dụ: "4.1.7")
|
ứng dụng_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 sự kiện diễn ra (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 thiết bị khách hàng |
loại đài phát thanh | sợi dây | Loại radio hoạt động khi sự kiện diễn ra (ví dụ: "WIFI") |
thuộc tính tùy chỉnh | Mảng<GHI> | Tất 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:
|
tên sự kiện | sợi dây | Tên 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 |
thông tin dấu vết | GHI | Chỉ hiện diện cho DURATION_TRACE , SCREEN_TRACE và TRACE_METRIC |
trace_info.duration_us | int64 |
|
trace_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 dấu vết màn hình này, 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 để hiển thị) |
trace_info.screen_info.frozen_frame_ratio | phao64 | Tỷ lệ khung hình bị treo cho dấu vết màn hình này, 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 để hiển thị) |
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") |
network_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_initiate_time_us | int64 | Micro giây sau event_timestamp khi phản hồi mạng được bắt đầuĐơ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 ví dụ về các truy vấn mà bạn có thể chạy trong BigQuery dựa trên dữ liệu Giám sát hiệu suất đã xuất của mình.
Xem phân tích độ 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 với 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 của ứng dụng 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 đã thiết lập một dấu vết mã tùy chỉnh để tải từ đĩa với thuộc tính tùy chỉnh có tên là file-extension
và số liệu tùy chỉnh ( TRACE_METRIC
) có tên cache-hit
được đặt thành 1
nếu truy cập bộ nhớ đệm và 0
nếu thiếu bộ nhớ đệm.
Ví dụ: bạn có thể tính tốc độ truy cập bộ đệm để tải 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 vào giờ nào trong ngày người dùng ở Hoa Kỳ đưa ra yêu cầu mạng từ ứng dụng của bạn:
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 vào 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 giải pháp khác của bên thứ ba. Hiện tại không có 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 thông qua API hoặc thư viện ứng dụng khách.
Định giá
Không mất phí khi 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í rộng rãi. Để biết thông tin chi tiết, hãy tham khảo Giá BigQuery hoặc hộp cát BigQuery .