0
0
Lập trình
TT

Nguyên Tắc Cốt Lõi của Quan Sát Hệ Thống qua Tags

Đăng vào 4 ngày trước

• 4 phút đọc

Giới thiệu

Khi nói đến quan sát hệ thống, chúng ta thường bị cuốn hút vào các bảng điều khiển, giám sát hay dấu vết. Tuy nhiên, có một yếu tố quan trọng xác định khả năng hiểu biết của bạn về hệ thống: tags.

Tags (đôi khi được gọi là nhãn hoặc thuộc tính) đại diện cho ngữ cảnh của dữ liệu telemetry.

Nhiều người nghĩ:

“Thực thể tồn tại và chúng phát ra telemetry.”

Nhưng tôi thích cách nhìn khác:

“Telemetry tồn tại, và nó có ngữ cảnh của nó — bao gồm cả thực thể phát ra.”

Vì telemetry trở nên độc lập một khi nó được phát ra khỏi thực thể phát ra, mỗi mảnh dữ liệu phải mang theo ngữ cảnh của nó. Ngữ cảnh này sống trong các tags, làm cho việc tagging trở thành nền tảng cho telemetry có thể sử dụng.

Từ kinh nghiệm của tôi, việc tagging hiệu quả dựa trên hai nguyên tắc: một tập trung vào số lượng, và một tập trung vào chất lượng.

Nguyên Tắc 1 (Số lượng): Thêm nhiều Ngữ Cảnh Nhất Có Thể

Tags là các khối xây dựng để đặt ra những câu hỏi có nghĩa từ dữ liệu telemetry của bạn. Ngữ cảnh càng phong phú, phân tích của bạn càng mạnh mẽ.

Ngay cả khi bạn không biết bạn sẽ sử dụng một tag hôm nay như thế nào, bạn không thể thêm nó một cách hồi tố vào dữ liệu telemetry trong quá khứ một khi bạn nhận ra rằng nó quan trọng.

Với chỉ một tag, chẳng hạn như:

Copy
service: checkout

Bạn sẽ nhanh chóng gặp giới hạn. Bạn không thể đặt ra các câu hỏi như:

  • "Các vùng nào đang gặp lỗi?"
  • "Có bao nhiêu lỗi xảy ra trong môi trường sản xuất?"

Nhưng với nhiều tags hơn, chẳng hạn như:

Copy
service: checkout
region: us-east-1
env: production
team: payments

Bạn có thể trả lời những câu hỏi đó.

Nếu bạn không chắc chắn bắt đầu với các tags nào, hãy dựa vào các tag được bảo lưu từ nền tảng của bạn hoặc các tag tiêu chuẩn trong ngành như được định nghĩa trong các quy ước ngữ nghĩa của OpenTelemetry. Trong nhiều trường hợp, các nền tảng xử lý chúng một cách đặc biệt, cung cấp các phân tích và hình ảnh hóa phong phú hơn.

Thực hành tốt nhất

  • Bắt đầu với các tags tiêu chuẩn.
  • Thêm nhiều ngữ cảnh để tăng cường khả năng phân tích.

Nguyên Tắc 2 (Chất lượng): Giữ Tags Canonical và Composable

Việc thêm nhiều tags là mạnh mẽ — nhưng chỉ khi chúng nhất quán và có thể ghép lại với nhau.

  • Canonical: một cách đại diện chính xác cho mỗi chiều.
  • Composable: mỗi tag đại diện cho một điều, vì vậy bạn có thể lọc hoặc nhóm chúng một cách độc lập.

Tình huống A: Chỉ một tag được ghép lại

Copy
service: auth-prod

Ở đây bạn mất khả năng lọc hoặc nhóm theo môi trường. Nếu ai đó hỏi "Có bao nhiêu lỗi trong sản xuất?", bạn không thể trả lời điều này.

Tình huống B: Trùng lặp hỗn hợp

Copy
service: auth-prod
environment: prod

Bây giờ bạn có hai nguồn thông tin cho môi trường. Tag env:prod đã đại diện cho môi trường, vì vậy việc mã hóa nó một lần nữa trong service:auth-prod là không cần thiết. Việc cố định nhiều giá trị để đại diện cho cùng một điều luôn dẫn đến sự lệch lạc theo thời gian.

Việc canonical cũng có nghĩa là thống nhất các giá trị chỉ về cùng một chiều. Ví dụ, bạn có thể thấy cả hai điều này ở các phần khác nhau của hệ thống:

Copy
env: prod
env: production

Cả hai tên đều được chấp nhận khi đứng riêng — nhưng không khi chúng tồn tại cùng nhau. Nếu bạn lọc theo env:prod, bạn sẽ bỏ lỡ telemetry được gán nhãn với env:production, và ngược lại. Hãy chọn một quy ước đặt tên và tuân thủ nó.

Mẹo cho Chất lượng Tags

  • Giữ cho tags đơn giản và dễ hiểu.
  • Sử dụng quy ước đặt tên nhất quán.

Kết luận

Tags không chỉ là metadata. Chúng là những người mang ngữ cảnh giúp cho telemetry có ý nghĩa đối với đội ngũ của bạn — và đối với tất cả những người khác phụ thuộc vào dữ liệu của bạn.

Bằng cách giữ hai nguyên tắc này trong tâm trí:

  • Số lượng: Thêm nhiều ngữ cảnh nhất có thể (bắt đầu với các tag tiêu chuẩn nếu không chắc chắn).
  • Chất lượng: Giữ tags canonical và composable (một chiều mỗi tag, giá trị nhất quán).

Theo cách này, bạn sẽ làm cho dữ liệu quan sát của mình trở nên có giá trị, đáng tin cậy và có thể tồn tại lâu dài.

Các Câu Hỏi Thường Gặp (FAQ)

Tags là gì và tại sao chúng quan trọng?

Tags là các nhãn giúp xác định ngữ cảnh của dữ liệu telemetry, cho phép phân tích hiệu quả và dễ dàng hơn.

Làm thế nào để chọn tags phù hợp?

Bạn nên bắt đầu với các tag tiêu chuẩn trong ngành và thêm các tag tùy chỉnh dựa trên nhu cầu của hệ thống của bạn.

Có cần phải có nhiều tags không?

Có, càng nhiều ngữ cảnh, phân tích của bạn càng sâu sắc và chính xác hơn.

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào