Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.
Trang này được dịch bởi Cloud Translation API.
Switch to English

Xuất dữ liệu Giám sát hiệu suất sang BigQuery

Bạn có thể xuất dữ liệu Giám sát hiệu suất từ ​​ứng dụng iOS 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 cách sử dụng BigQuery SQL, xuất dữ liệu đó sang một 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 xuất BigQuery

  1. Truy cập 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 .

  2. Làm theo hướng dẫn trên màn hình để bật BigQuery.

Khi bạn liên kết dự án của mình với BiqQuery:

  • Firebase xuất bản sao dữ liệu hiện có của bạn sang BigQuery.

    • Ở lần liên kết đầu tiên, Firebase tự động lập lịch cho các bảng BigQuery của bạn để chèn lấp dữ liệu trong 7 ngày qua để bạn có thể bắt đầu thử nghiệm ngay lập tức. Chờ một vài giờ để dữ liệu ban đầu có sẵn trong BigQuery.

    • Bạn cũng có thể lập lịch trình lấp đầy dữ liệu theo cách thủ công trong tối đa 30 ngày qua.

  • Firebase thiết lập đồng bộ hàng ngày dữ liệu của bạn từ dự án Firebase sang BigQuery.

  • Theo mặc định, tất cả các ứng dụng trong dự án của bạn đều được liên kết với BigQuery và bất kỳ ứng dụng nào 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, việc xuất sẽ tạo ra 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 - dấu vết thu thập, theo mặc định, chỉ số về "thời lượng", bao gồm khởi động ứng dụng, ứng dụng trong nền 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 cung cấp

    • event_typeDURATION_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 cung cấp

    • event_typeTRACE_METRIC
    • event_name là tên của chỉ số
    • parent_trace_name là tên theo dõi chứa chỉ số này
  • Dấu vết màn hình - dấu vết kéo dài 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_typeSCREEN_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 thời gian tồn tại của một yêu cầu mạng (dấu vết yêu cầu mạng HTTP)

    • event_typeNETWORK_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à cung cấp thiết bị khách), cũng như thông tin về sự kiện cụ thể:

  • 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 chuỗi Hiển thị phiên bản của ứng dụng (ví dụ: "4.1.7")
  • Đối với Android - VersionName
  • Đối với iOS - CFBundleShortVersionString
app_build_version chuỗi Phiên bản xây dựng của ứng dụng (ví dụ: "1523456")
  • Đối với Android - VersionCode
  • Đối với iOS - CFBundleVersion
phiên bản của hệ điều hành chuỗi Phiên bản hệ điều hành của thiết bị khách
  • Đối với Android - Cấp API Android (ví dụ: "26")
  • Đối với iOS - phiên bản iOS (ví dụ: "11.4")
Tên thiết bị chuỗi Tên của thiết bị khách (ví dụ: "Google Pixel")
Quốc gia chuỗi 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ụ: "Hoa Kỳ" hoặc "ZZ" cho quốc gia không xác định)
vận chuyển chuỗi Nhà cung cấp thiết bị khách
radio_type chuỗi Loại radio hoạt động khi sự kiện diễn ra (ví dụ: "WIFI")
custom_attributes ARRAY <RECORD> 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 chuỗi Khóa của thuộc tính tùy chỉnh
custom_attributes.value chuỗi Giá trị của thuộc tính tùy chỉnh
loại sự kiện chuỗi Loại sự kiện; những giá trị khả thi:
  • DURATION_TRACE - dấu vết thu thập, theo mặc định, chỉ số "thời lượng", bao gồm khởi động ứng dụng, ứng dụng trong nền 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 cung cấp
  • SCREEN_TRACE - 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)
  • TRACE_METRIC - 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 cung cấp
  • NETWORK_REQUEST - dấu vết kéo dài thời gian tồn tại của một yêu cầu mạng (dấu vết yêu cầu mạng HTTP)
event_name chuỗi Tên sự kiện
  • Trong DURATION_TRACE - tên vết
  • Đối với TRACE_METRIC - tên chỉ số tùy chỉnh
  • Đối với SCREEN_TRACE - _st_ theo sau là tên vết
  • Đối với NETWORK_REQUEST - mẫu URL yêu cầu mạng
parent_trace_name chuỗi Tên của dấu vết mẹ mang chỉ số vết
Chỉ hiện tại cho TRACE_METRIC
trace_info GHI LẠI Chỉ hiện diện cho DURATION_TRACE , SCREEN_TRACETRACE_METRIC
trace_info.duration_us int64
  • Trong DURATION_TRACESCREEN_TRACE - Khoảng thời gian ("thời lượng") từ đầu đến cuối theo dõi
  • Đối với TRACE_METRIC - khoảng thời gian ("thời lượng") từ đầu đến cuối theo dõi gốc
Đơn vị: micro giây
trace_info.screen_info GHI LẠI Chỉ hiện tại cho SCREEN_TRACE
trace_info.screen_info.slow_frame_ratio float64 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% khung hình cho trường hợp màn hình này mất hơn 16 mili giây để hiển thị)
trace_info.screen_info.frozen_frame_ratio float64 Tỷ lệ khung hình cố định 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% khung hình cho trường hợp màn hình này mất hơn 700 mili giây để hiển thị)
trace_info.metric_info GHI LẠI Chỉ hiện tại 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 LẠI Chỉ hiện tại 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 chuỗi Loại MIME của phản hồi mạng (ví dụ: "text / html")
network_info.request_http_method chuỗi 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 phản hồi mạng
Đơn vị: byte
network_info.request_completed_time_us int64 Microseconds 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 Microseconds 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 Microseconds 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 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 bạn.

Xem phân tích độ trễ bắt đầu ứ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 cố định trong các điều kiện khác nhau

Ví dụ: bạn có thể kiểm tra tỷ lệ khung hình cố định cùng với lượng thời gian người dùng dành cho mỗi màn hình ứ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 toán tỷ lệ truy cập bộ nhớ cache để 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 là cache-hit được đặt thành 1 nếu lần truy cập bộ nhớ cache và 0 nếu bộ nhớ cache bị bỏ lỡ.

Ví dụ: bạn có thể tính toán tỷ lệ truy cập bộ nhớ cache để 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 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 theo dữ liệu Giám sát hiệu suất của bạn ở bất cứ đâu

Đôi khi bạn muốn truy cập dữ liệu Giám sát hiệu suất của mình từ phía máy chủ hoặc đẩy nó sang giải pháp của bên thứ ba khác. 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:

Định giá

Miễn 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í 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 .