Thêm giám sát tùy chỉnh cho mã ứng dụng cụ thể

Giám sát hiệu suất thu thập các dấu vết để giúp bạn theo dõi hiệu suất của ứng dụng của mình. Dấu vết là một báo cáo về dữ liệu hiệu suất được thu thập giữa hai thời điểm trong ứng dụng của bạn.

Bạn có thể tạo dấu vết của riêng mình để theo dõi dữ liệu hiệu suất được liên kết với mã cụ thể trong ứng dụng của bạn. Với dấu vết mã tùy chỉnh , bạn có thể đo lường thời gian ứng dụng của mình hoàn thành một tác vụ cụ thể hoặc một nhóm tác vụ, ví dụ: tải một bộ hình ảnh hoặc truy vấn cơ sở dữ liệu của bạn.

Chỉ số mặc định cho theo dõi mã tùy chỉnh là "thời lượng" của nó (thời gian giữa điểm bắt đầu và điểm dừng của dấu vết), nhưng bạn cũng có thể thêm số liệu tùy chỉnh .

Trong mã của mình, bạn xác định phần đầu và phần cuối của một dấu vết mã tùy chỉnh bằng cách sử dụng các API do SDK giám sát hiệu suất cung cấp.Dấu vết mã tùy chỉnh có thể được bắt đầu bất cứ lúc nào sau khi chúng được tạo và chúng an toàn trong chuỗi.

Vì chỉ số mặc định được thu thập cho các dấu vết này là "thời lượng", chúng đôi khi được gọi là "Dấu vết thời lượng".

Bạn có thể xem dữ liệu từ các dấu vết này trong tab phụ Dấu vết tùy chỉnh của bảng dấu vết, ở cuối trang tổng quan Hiệu suất (tìm hiểu thêm về cách sử dụng bảng điều khiển sau trên trang này).

Thuộc tính mặc định, thuộc tính tùy chỉnh và chỉ số tùy chỉnh

Đối với dấu vết mã tùy chỉnh, Giám sát hiệu suất tự động ghi lại các thuộc tính mặc định (siêu dữ liệu phổ biến như quốc gia, trình duyệt, URL trang, v.v.) để bạn có thể lọc dữ liệu cho dấu vết trong bảng điều khiển Firebase. Bạn cũng có thể thêm và giám sát các thuộc tính tùy chỉnh (chẳng hạn như cấp độ trò chơi hoặc thuộc tính người dùng).

Bạn có thể định cấu hình thêm một dấu vết mã tùy chỉnh để ghi lại các số liệu tùy chỉnh cho các sự kiện liên quan đến hiệu suất xảy ra trong phạm vi của dấu vết. Ví dụ: bạn có thể tạo số liệu tùy chỉnh cho số lần truy cập và bỏ lỡ bộ nhớ cache hoặc số lần giao diện người dùng không phản hồi trong một khoảng thời gian đáng chú ý.

Thuộc tính tùy chỉnh và chỉ số tùy chỉnh hiển thị trong bảng điều khiển Firebase cùng với các thuộc tính mặc định và chỉ số mặc định cho theo dõi.

Thêm dấu vết mã tùy chỉnh

Sử dụng API theo dõi giám sát hiệu suất để thêm dấu vết mã tùy chỉnh để giám sát mã ứng dụng cụ thể.

Lưu ý những điều dưới đây:

  • Một ứng dụng có thể có nhiều dấu vết mã tùy chỉnh.
  • Nhiều hơn một dấu vết mã tùy chỉnh có thể chạy cùng một lúc.
  • Tên cho dấu vết mã tùy chỉnh phải đáp ứng các yêu cầu sau: không có khoảng trắng ở đầu hoặc cuối, không có ký tự gạch dưới ( _ ) ở đầu và độ dài tối đa là 100 ký tự.
  • Dấu vết mã tùy chỉnh hỗ trợ thêm số liệu tùy chỉnh và thuộc tính tùy chỉnh .

Để bắt đầu và dừng theo dõi mã tùy chỉnh, hãy bọc mã mà bạn muốn theo dõi bằng các dòng mã tương tự như sau:

Web version 9

import { trace } from "firebase/performance";

const t = trace(perf, "CUSTOM_TRACE_NAME");
t.start();

// Code that you want to trace 
// ...

t.stop();

Web version 8

const trace = perf.trace("CUSTOM_TRACE_NAME");
trace.start();

// Code that you want to trace 
// ...

trace.stop();

Thêm dấu vết mã tùy chỉnh bằng API thời gian người dùng

Ngoài API theo dõi hiệu suất theo dõi, bạn có thể thêm dấu vết mã tùy chỉnh bằng cách sử dụng API định thời gian người dùng gốc của trình duyệt. Thời lượng của dấu vết được đo bằng API này được SDK theo dõi hiệu suất tự động chọn. Sử dụng API thời gian người dùng đặc biệt hữu ích nếu bạn muốn tải SDK giám sát hiệu suất một cách không đồng bộ. Sau khi SDK được phức tạp hóa, SDK sẽ ghi lại các phép đo đã xảy ra trước khi tải.

Để sử dụng tính năng này, hãy bọc mã bạn muốn theo dõi bằng các dấu Thời gian người dùng:

Web version 9

const performance = window.performance;

performance.mark("measurementStart");

// Code that you want to trace 
// ...

performance.mark("measurementStop");
performance.measure("customTraceName", "measurementStart", "measurementStop");

Web version 8

const performance = window.performance;

performance.mark("measurementStart");

// Code that you want to trace 
// ...

performance.mark("measurementStop");
performance.measure("customTraceName", "measurementStart", "measurementStop");

Lưu ý rằng performance trong ví dụ trên đề cập đến đối tượng window.performance của trình duyệt.

Khi sử dụng API thời gian người dùng, không thể thêm các chỉ số và thuộc tính tùy chỉnh vào dấu vết mã tùy chỉnh. Sử dụng API theo dõi giám sát hiệu suất nếu bạn muốn thêm các yếu tố tùy chỉnh đó vào theo dõi mã tùy chỉnh.

Thêm số liệu tùy chỉnh vào dấu vết mã tùy chỉnh

Sử dụng API theo dõi giám sát hiệu suất để thêm số liệu tùy chỉnh vào dấu vết mã tùy chỉnh.

Lưu ý những điều dưới đây:

  • Tên cho số liệu tùy chỉnh phải đáp ứng các yêu cầu sau: không có khoảng trắng ở đầu hoặc cuối, không có ký tự gạch dưới ( _ ) ở đầu và độ dài tối đa là 100 ký tự.
  • Mỗi dấu vết mã tùy chỉnh có thể ghi lại tối đa 32 chỉ số (bao gồm cả chỉ số Thời lượng mặc định).

Để thêm số liệu tùy chỉnh, hãy thêm một dòng mã tương tự như sau mỗi khi sự kiện xảy ra. Ví dụ: chỉ số tùy chỉnh này tính các sự kiện liên quan đến hiệu suất xảy ra trong ứng dụng của bạn.

Web version 9

import { trace } from "firebase/performance";

async function getInventory(inventoryIds) {
  const t = trace(perf, "inventoryRetrieval");

  // Tracks the number of IDs fetched (the metric could help you to optimize in the future)
  t.incrementMetric("numberOfIds", inventoryIds.length);

  // Measures the time it takes to request inventory based on the amount of inventory
  t.start();
  const inventoryData = await retrieveInventory(inventoryIds);
  t.stop();

  return inventoryData;
}

Web version 8

async function getInventory(inventoryIds) {
  const trace = perf.trace("inventoryRetrieval");

  // Tracks the number of IDs fetched (the metric could help you to optimize in the future)
  trace.incrementMetric("numberOfIds", inventoryIds.length);

  // Measures the time it takes to request inventory based on the amount of inventory
  trace.start();
  const inventoryData = await retrieveInventory(inventoryIds);
  trace.stop();

  return inventoryData;
}

Tạo thuộc tính tùy chỉnh cho dấu vết mã tùy chỉnh

Sử dụng API theo dõi giám sát hiệu suất để thêm thuộc tính tùy chỉnh vào dấu vết mã tùy chỉnh.

Để sử dụng thuộc tính tùy chỉnh, hãy thêm mã vào ứng dụng của bạn để xác định thuộc tính và liên kết thuộc tính đó với một dấu vết mã tùy chỉnh cụ thể. Bạn có thể đặt thuộc tính tùy chỉnh bất cứ lúc nào giữa thời điểm bắt đầu theo dõi và khi dừng theo dõi.

Lưu ý những điều dưới đây:

  • Tên cho thuộc tính tùy chỉnh phải đáp ứng các yêu cầu sau: không có khoảng trắng ở đầu hoặc cuối, không có ký tự gạch dưới ( _ ) ở đầu và độ dài tối đa là 32 ký tự.

  • Mỗi dấu vết mã tùy chỉnh có thể ghi lại tối đa 5 thuộc tính tùy chỉnh.

  • Bạn không nên sử dụng các thuộc tính tùy chỉnh có chứa thông tin nhận dạng cá nhân của một cá nhân đối với Google.

    Tìm hiểu thêm về hướng dẫn này

Web version 9

import { trace } from "firebase/performance";

const t = trace(perf, "test_trace");
t.putAttribute("experiment", "A");

// Update scenario
t.putAttribute("experiment", "B");

// Reading scenario
const experimentValue = t.getAttribute("experiment");

// Delete scenario
t.removeAttribute("experiment");

// Read attributes
const traceAttributes = t.getAttributes();

Web version 8

const trace = perf.trace("test_trace");
trace.putAttribute("experiment", "A");

// Update scenario
trace.putAttribute("experiment", "B");

// Reading scenario
const experimentValue = trace.getAttribute("experiment");

// Delete scenario
trace.removeAttribute("experiment");

// Read attributes
const traceAttributes = trace.getAttributes();

Theo dõi, xem và lọc dữ liệu hiệu suất

Để xem dữ liệu hiệu suất theo thời gian thực, hãy đảm bảo rằng ứng dụng của bạn sử dụng phiên bản SDK giám sát hiệu suất tương thích với xử lý dữ liệu thời gian thực. Tìm hiểu thêm về dữ liệu hiệu suất thời gian thực .

Theo dõi các chỉ số cụ thể trong trang tổng quan của bạn

Để tìm hiểu xu hướng của các chỉ số chính của bạn, hãy thêm chúng vào bảng chỉ số của bạn ở đầu trang tổng quan Hiệu suất . Bạn có thể nhanh chóng xác định các hồi quy bằng cách xem các thay đổi hàng tuần hoặc xác minh rằng các thay đổi gần đây trong mã của bạn đang cải thiện hiệu suất.

hình ảnh của bảng chỉ số trong trang tổng quan Giám sát hiệu suất Firebase

Để thêm chỉ số vào bảng chỉ số của bạn, hãy làm theo các bước sau:

  1. Chuyển đến bảng điều khiển Hiệu suất trong bảng điều khiển Firebase.
  2. Nhấp vào thẻ số liệu trống, sau đó chọn số liệu hiện có để thêm vào bảng của bạn.
  3. Nhấp vào trên thẻ chỉ số đã phổ biến để có thêm tùy chọn, chẳng hạn như để thay thế hoặc xóa một số liệu.

Bảng chỉ số hiển thị dữ liệu chỉ số được thu thập theo thời gian, cả ở dạng đồ họa và dưới dạng số phần trăm thay đổi.

Tìm hiểu thêm về cách sử dụng trang tổng quan .

Xem dấu vết và dữ liệu của chúng

Để xem dấu vết của bạn, hãy chuyển đến Bảng điều khiển hiệu suất trong bảng điều khiển Firebase, cuộn xuống bảng dấu vết, sau đó nhấp vào tab phụ thích hợp. Bảng hiển thị một số chỉ số hàng đầu cho mỗi dấu vết và bạn thậm chí có thể sắp xếp danh sách theo tỷ lệ phần trăm thay đổi cho một số liệu cụ thể.

Giám sát hiệu suất cung cấp trang khắc phục sự cố trong bảng điều khiển Firebase, trang này nêu bật các thay đổi về chỉ số, giúp bạn dễ dàng giải quyết nhanh chóng và giảm thiểu tác động của các vấn đề về hiệu suất đối với ứng dụng và người dùng của bạn. Bạn có thể sử dụng trang khắc phục sự cố khi tìm hiểu về các vấn đề hiệu suất tiềm ẩn, chẳng hạn như trong các trường hợp sau:

  • Bạn chọn các chỉ số có liên quan trên trang tổng quan và bạn nhận thấy một vùng đồng bằng lớn.
  • Trong bảng dấu vết, bạn sắp xếp để hiển thị các delta lớn nhất ở trên cùng và bạn thấy một tỷ lệ phần trăm thay đổi đáng kể.
  • Bạn nhận được một email thông báo cho bạn về sự cố hiệu suất.

Bạn có thể truy cập trang khắc phục sự cố theo những cách sau:

  • Trên trang tổng quan chỉ số, nhấp vào nút Xem chi tiết số liệu .
  • Trên bất kỳ thẻ chỉ số nào, hãy chọn => Xem chi tiết . Trang khắc phục sự cố hiển thị thông tin về số liệu bạn đã chọn.
  • Trong bảng dấu vết, hãy nhấp vào tên dấu vết hoặc bất kỳ giá trị số liệu nào trong hàng được liên kết với dấu vết đó.
  • Trong một cảnh báo qua email, hãy nhấp vào Điều tra ngay bây giờ .

Khi bạn nhấp vào tên dấu vết trong bảng dấu vết, sau đó bạn có thể đi sâu vào các chỉ số quan tâm. Nhấp vào nút bộ lọc để lọc dữ liệu theo thuộc tính, ví dụ:

hình ảnh dữ liệu Giám sát hiệu suất Firebase đang được lọc theo thuộc tính
  • Lọc theo URL trang để xem dữ liệu cho một trang cụ thể trên trang web của bạn
  • Lọc theo loại kết nối hiệu quả để tìm hiểu cách kết nối 3g ảnh hưởng đến ứng dụng của bạn
  • Lọc theo Quốc gia để đảm bảo vị trí cơ sở dữ liệu của bạn không ảnh hưởng đến một khu vực cụ thể

Tìm hiểu thêm về cách xem dữ liệu cho dấu vết của bạn .

Bước tiếp theo

  • Tìm hiểu thêm về cách sử dụng các thuộc tính để kiểm tra dữ liệu hiệu suất.

  • Tìm hiểu thêm về cách theo dõi các vấn đề về hiệu suất trong bảng điều khiển Firebase.

  • Thiết lập cảnh báo cho các thay đổi mã đang làm giảm hiệu suất của ứng dụng của bạn. Ví dụ: bạn có thể định cấu hình cảnh báo qua email cho nhóm của mình nếu thời lượng của một dấu vết mã tùy chỉnh cụ thể vượt quá ngưỡng mà bạn đã đặt.