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 dấu vết để giúp bạn theo dõi hiệu suất ứng dụng của mình. Dấu vết là báo cáo về dữ liệu hiệu suất được ghi lại 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 theo dõi mã tùy chỉnh , bạn có thể đo khoảng thời gian ứng dụng của bạn hoàn thành một tác vụ cụ thể hoặc một nhóm tác vụ, chẳng hạn như tải một tập hợp hình ảnh hoặc truy vấn cơ sở dữ liệu của bạn.

Số liệu mặc định cho dấu vết mã tùy chỉnh là "thời lượng" (thời gian giữa điểm bắt đầu và điểm kết thúc 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 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.Đối với ứng dụng Android, bạn cũng có thể giám sát các phương pháp cụ thể bằng cách sử dụng chú thích @AddTrace .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 theo chuỗi.

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

Bạn có thể xem dữ liệu từ những 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à số liệu tùy chỉnh

Đối với dấu vết mã tùy chỉnh, Giám sát hiệu suất sẽ tự động ghi lại các thuộc tính mặc định (siêu dữ liệu phổ biến như phiên bản ứng dụng, quốc gia, thiết bị, 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ể đặt cấu hình thêm theo dõi mã tùy chỉnh để ghi lại 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ộ đệm 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 nhằm 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 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ỉnhthuộ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 (ví dụ này sử dụng tên theo dõi tùy chỉnh là test_trace ):

Kotlin+KTX

// Import these Performance Monitoring classes at the top of your `.kt` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.Trace;

val myTrace = Firebase.performance.newTrace("test_trace")
myTrace.start()

// code that you want to trace

myTrace.stop()

Java

// Import these Performance Monitoring classes at the top of your `.java` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.Trace;

Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace");
myTrace.start();

// code that you want to trace

myTrace.stop();

(Tùy chọn) Giám sát các phương pháp cụ thể bằng @AddTrace

Các ứng dụng Android cũng hỗ trợ chú thích @AddTrace để theo dõi mã tùy chỉnh của công cụ. Khi sử dụng tính năng này, dấu vết sẽ bắt đầu ở đầu phương thức đã chỉ định và dừng khi phương thức đó hoàn thành, bao gồm mọi nội dung được phương thức đó gọi ra.

Ví dụ: bạn có thể tạo một dấu vết mã tùy chỉnh có tên là onCreateTrace chạy khi phương thức onCreate() được gọi.

Kotlin+KTX

// Import these Performance Monitoring classes at the top of your `.kt` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.AddTrace;

// Add the `@AddTrace` annotation above the method you want to trace
// the `enabled` argument is optional and defaults to true
@AddTrace(name = "onCreateTrace", enabled = true)
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
}

Java

// Import these Performance Monitoring classes at the top of your `.java` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.AddTrace;

// Add the `@AddTrace` annotation above the method you want to trace
@Override
@AddTrace(name = "onCreateTrace", enabled = true /* optional */)
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
}

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 chỉ số 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ụ: số liệu 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, chẳng hạn như số lần truy cập và bỏ lỡ bộ nhớ đệm (sử dụng tên sự kiện mẫu là item_cache_hititem_cache_miss và số gia là 1 ).

Kotlin+KTX

val myTrace = Firebase.performance.newTrace("test_trace")
myTrace.start()

// code that you want to trace (and log custom metrics)
val item = cache.fetch("item")
if (item != null) {
    myTrace.incrementMetric("item_cache_hit", 1)
} else {
    myTrace.incrementMetric("item_cache_miss", 1)
}

myTrace.stop()

Java

Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace");
myTrace.start();

// code that you want to trace (and log custom metrics)
Item item = cache.fetch("item");
if (item != null) {
    myTrace.incrementMetric("item_cache_hit", 1);
} else {
    myTrace.incrementMetric("item_cache_miss", 1);
}

myTrace.stop();

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 nó với 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 từ khi bắt đầu theo dõi đến 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
    • Không có khoảng trắng
    • Độ dài tối đa là 32 ký tự
    • Các ký tự được phép cho tên là AZ , az_ .
  • 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.

  • Hãy đảm bảo rằng các thuộc tính tùy chỉnh không chứa bất kỳ thông tin nào nhận dạng cá nhân đối với Google.

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

Kotlin+KTX

Firebase.performance.newTrace("test_trace").trace {
    // Update scenario.
    putAttribute("experiment", "A")

    // Reading scenario.
    val experimentValue = getAttribute("experiment")

    // Delete scenario.
    removeAttribute("experiment")

    // Read attributes.
    val traceAttributes = this.attributes
}

Java

Trace trace = FirebasePerformance.getInstance().newTrace("test_trace");

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

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

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

// Read attributes.
Map<String, String> traceAttributes = trace.getAttributes();

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

Theo dõi số liệu cụ thể trong trang tổng quan của bạn

Để tìm hiểu xu hướng của các số liệu chính của bạn, hãy thêm chúng vào bảng số liệu ở đầ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 những thay đổi gần đây trong mã của bạn đang cải thiện hiệu suất.

hình ảnh bảng số liệu 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ố đã điền để có thêm tùy chọn, chẳng hạn như thay thế hoặc xóa chỉ số.

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

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 họ

Để xem dấu vết của bạn, hãy đi tới Trang tổng quan 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ố số liệu hàng đầu cho từng dấu vết và thậm chí bạn có thể sắp xếp danh sách theo phần trăm thay đổi đối với 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 làm nổi 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 sự cố tiềm ẩn về hiệu suất, chẳng hạn như trong các trường hợp sau:

  • Bạn chọn các số liệu 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ị vùng delta lớn nhất ở trên cùng và bạn thấy phần trăm thay đổi đáng kể.
  • Bạn nhận được thông báo qua email thông báo cho bạn về vấn đề hiệu suất.

Bạn có thể truy cập trang xử lý sự cố theo những cách sau:

  • Trên trang tổng quan chỉ số, hãy nhấp vào nút Xem chi tiết chỉ số .
  • Trên bất kỳ thẻ số liệu 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 thông báo qua email, hãy nhấp vào Điều tra ngay .

Khi bạn nhấp vào tên dấu vết trong bảng dấu vết, bạn có thể xem chi tiết các số liệu quan tâm. Nhấn 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 phiên bản Ứng dụng để xem dữ liệu về bản phát hành trước đây hoặc bản phát hành mới nhất của bạn
  • Lọc theo thiết bị để tìm hiểu cách các thiết bị cũ xử lý ứ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 về 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 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 về những thay đổi mã đang làm giảm hiệu suất ứ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 dấu vết mã tùy chỉnh cụ thể vượt quá ngưỡng bạn đặt.

  • Xem báo cáo chi tiết về các phiên của người dùng trong đó bạn có thể thấy dấu vết cụ thể trong bối cảnh dòng thời gian của các dấu vết khác được thu thập trong cùng một phiên.