Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Ruby

Theo dõi Custom Metrics trong AppSignal để có Insight tức thì, hành động được

Thiết lập custom metrics (chỉ số tùy chỉnh) là cách dễ dàng để có insight tức thì vào thông tin bạn cần (không cần lọc qua dòng log hay vật lộn với công cụ báo cáo phức tạp). Bổ sung dữ liệu giám sát quan trọng của ứng dụng bằng cách theo dõi chỉ số có ý nghĩa để nhanh chóng xác định và giải quyết vấn đề tiềm ẩn.

Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách thiết lập và sử dụng custom metrics để loại bỏ điểm mù giám sát. Chúng tôi sẽ minh họa cách dùng custom metrics cùng bộ công cụ giám sát của chúng tôi để hiểu rõ hơn về hiệu năng ứng dụng.

Custom Metrics là gì?

Khi nói đến metrics, AppSignal mặc định theo dõi dữ liệu quan trọng như tỷ lệ lỗi (error rates), thời gian phản hồi (response times), và thông lượng (throughput). Chúng tôi dùng các metrics này để giám sát ứng dụng và thông báo khi ứng dụng gặp vấn đề hiệu năng.

Custom metrics cho phép bạn hình dung và theo dõi bất kỳ dữ liệu ứng dụng nào bạn muốn, cung cấp insight sâu hơn vào hiệu năng ứng dụng bằng cách liên kết ngữ cảnh bổ sung — như số lượng user đang hoạt động hoặc thời gian xử lý job cụ thể. Bạn có thể tạo dashboard trong AppSignal để theo dõi custom metrics cùng các metrics quan trọng như throughput hoặc kích thước cơ sở dữ liệu.

Theo dõi Custom Metrics trong AppSignal để có Insight tức thì, hành động được

Đo lường Metrics của bạn

Khi gửi metrics đến AppSignal, quan trọng là cân nhắc cách bạn muốn đo lường chúng. AppSignal cung cấp ba phương pháp đo lường:

AppSignal cung cấp phương thức và hàm để giúp bạn dễ dàng theo dõi custom metrics dùng hình thức đo lường phù hợp.

Hãy tưởng tượng chúng ta đang giám sát một webshop. Chúng ta sẽ chỉ cách dùng gauge, counter, và distribution measurement để theo dõi các điểm dữ liệu cụ thể.

Gauge

Để hiểu ngữ cảnh tại sao ứng dụng có thể hiệu năng cao hoặc thấp hơn bình thường, hãy xem có bao nhiêu người mua sắm đang hoạt động (active shoppers) hiện tại dùng ứng dụng. Chúng ta sẽ dùng measure gauge để báo cáo số lượng user hoạt động mỗi khi session user mới được tạo trong ứng dụng.

Để làm điều này, chúng ta có thể tạo minutely probe (sonda mỗi phút), một cơ chế gửi custom metrics đến AppSignal định kỳ. Chúng ta dùng probe này để ghi lại bao nhiêu giỏ hàng đã được cập nhật trong phút qua và gửi thông tin này đến AppSignal dưới nhãn active_shoppers dùng phương thức set_gauge. Ví dụ:

Ruby


Bạn có thể đọc tài liệu Ruby của chúng tôi để biết thêm về minutely probes.

Elixir


Bạn có thể đọc tài liệu Elixir của chúng tôi để biết thêm về minutely probes.

Node.js


Bạn có thể đọc tài liệu Node.js của chúng tôi để biết thêm về minutely probes.

Sau khi cấu hình, chúng ta có thể tạo biểu đồ trong AppSignal để theo dõi bao nhiêu người mua sắm đang hoạt động dùng ứng dụng:

Theo dõi Custom Metrics trong AppSignal để có Insight tức thì, hành động được

Với thông tin này, chúng ta có thể nhanh chóng suy ra hiệu năng webshop dựa trên số lượng người dùng hoạt động xấp xỉ. Nếu thấy số lượng đặc biệt cao và dự đoán vấn đề hiệu năng, chúng ta có thể biện pháp để đảm bảo ứng dụng vẫn khả dụng.

Counter

Với counter, chúng ta có thể theo dõi tần suất sự kiện xảy ra trong ứng dụng. Tính năng này tiện lợi trong kịch bản cần theo dõi tần suất hành động hoặc sự kiện nhất định theo thời gian — ví dụ: bao nhiêu lần user hoàn thành hành động, như thêm món vào giỏ hàng.

Giả sử chúng ta muốn hiểu ứng dụng xuất hóa đơn cho user bao nhiêu lần. Để làm điều này, chúng ta cần tăng counter mỗi khi hóa đơn được tạo.

Dùng phương thức increment_counter trong Ruby và Elixir:



Và hàm incrementCounter trong Node.js:



Sau khi thiết lập, chúng ta có thể theo dõi bao nhiêu hóa đơn ứng dụng tạo ra trong AppSignal:

Theo dõi Custom Metrics trong AppSignal để có Insight tức thì, hành động được

Nếu theo dõi thêm điểm dữ liệu liên quan, như đơn hàng đặt, và nhận thấy metrics không theo dõi lẫn nhau như kỳ vọng? Khi đó chúng ta có thể điều tra logic xuất hóa đơn và đặt hàng, và tiềm ẩn định vị và sửa lỗi quan trọng trước khi ảnh hưởng nhiều khách hàng.

Distribution

Bạn có thể dùng custom metrics để ghi lại phép đo dữ liệu, như thời gian phản hồi hoặc thời lượng background job. Theo dõi các metrics này giúp xác định background job hoặc API endpoint hoạt động kém, có thể ảnh hưởng tiêu cực đến trải nghiệm người dùng.

Chúng ta muốn xem trung bình thời gian ứng dụng chạy job xác nhận đơn hàng, vì khách hàng cần nhận email này trong vài phút sau khi mua.

Để làm điều này, dùng phương thức add_distribution_value:

Ruby



Elixir



Node.js



Sau khi xong, chúng ta có thể theo dõi thời gian trung bình job confirm order mất để hoàn thành trong AppSignal. Chúng ta sẽ nhận ra nếu nó chậm hơn kỳ vọng trước khi user nhận ra, cho phép chủ động giữ ứng dụng khả dụng và mở rộng.

Theo dõi Custom Metrics trong AppSignal để có Insight tức thì, hành động được

Custom Dashboards cho Custom Metrics

Nhờ UI trực quan, bạn có thể bắt đầu theo dõi custom metrics trong vài phút.

Bạn có thể dùng nút "Add dashboard" trong điều hướng Dashboard để tạo dashboard mới. Nhấn nút "Add graph" để bắt đầu xây dựng biểu đồ với Graph Builder của chúng tôi.

Theo dõi Custom Metrics trong AppSignal để có Insight tức thì, hành động được

Khi tạo biểu đồ, bạn có thể chọn metrics và tag nào muốn vẽ biểu đồ và cấu hình chú thích (legends) và nhãn (labels) của biểu đồ. Xong, bạn sẽ ngay lập tức thấy biểu đồ hiển thị dữ liệu metric hiện tại cho khoảng thời gian chỉ định.

Tại sao Metrics quan trọng

Trong khi logging là giải pháp tuyệt vời giúp bạn debug và troubleshoot vấn đề hiệu năng ứng dụng sau khi chúng xảy ra, metrics có thể giúp bạn ngăn chặn vấn đề tương lai trước khi khách hàng nhận ra. Với custom metrics, bạn có thể:

  • Tập trung vào cốt lõi: Theo dõi chính xác các điểm dữ liệu cụ thể trong ứng dụng và nhận insight tập trung mà không cần lọc qua lượng lớn metadata log hoặc danh sách sự cố.
  • Đi thẳng vào vấn đề: Hiểu hiệu năng ứng dụng từ góc độ kinh doanh và nhanh chóng theo dõi dữ liệu quan trọng như số user hoạt động, KPI, hoặc doanh số hàng ngày.
  • Làm gọn logging: Log 'tất cả mọi thứ mọi lúc' không bền vững. Với custom metrics, bạn theo dõi dữ liệu thiết yếu hiệu quả và dùng log để điều tra nguyên nhân sự cố, chỉ log dữ liệu cần thiết cho troubleshooting và debugging.
  • Làm việc chủ động, không bị động: Đặt trigger tùy chỉnh cảnh báo nếu ứng dụng mất quá nhiều thời gian gửi hóa đơn cho user, ví dụ, hoặc trải qua lượng user hoạt động cao hơn bình thường. Cảnh báo này cho phép bạn chủ động điều tra và giải quyết vấn đề trước khi ảnh hưởng khách hàng.

Đi sâu hơn vào Custom Metrics

Sẵn sàng tận dụng tối đa metrics ứng dụng? Bài viết này chỉ bao quát một phần nhỏ những gì có thể với custom metrics trong AppSignal. Tài liệu custom metrics của chúng tôi nêu rõ mọi thứ bạn cần biết.

Nếu cần giúp đỡ, có câu hỏi về metrics hoặc bất cứ điều gì liên quan AppSignal hoặc giám sát, bạn luôn có thể liên hệ chúng tôi.

Custom metrics của AppSignal chỉ là một trong nhiều tính năng do nhà phát triển điều khiển giúp bạn giám sát ứng dụng. Nhà phát triển cũng thích dùng giám sát của chúng tôi vì chúng tôi có:

  • Giao diện trực quan, dễ điều hướng.
  • Định giá đơn giản và dễ dự đoán.
  • Hỗ trợ từ nhà phát triển đến nhà phát triển.

Nếu bạn mới với AppSignal, nhớ yêu cầu chúng tôi một ít stroopwafels miễn phí! Chúng ngon gần như cảm giác có tất cả metrics ứng dụng ở đầu ngón tay 😉🍪

Theo dõi Custom Metrics trong AppSignal để có Insight tức thì, hành động được

Connor James

Quản lý Marketing Nhà phát triển tại AppSignal. Nghiện podcast, yêu cannoli đến mức cân nhắc đổi tên thành Connoli. Anh nghĩ có chữ 'u' trong từ color. Bạn có thể tìm anh trên mic, trên sân khấu, hoặc nằm trên ghế sofa khi nghỉ.

Tất cả bài viết của Connor James