api@1.2.3 hoặc
một commit Git. LogBrew không tạo bản phát hành từ tag của repository hay từ
một lần triển khai. Mọi envelope telemetry gốc phải có release và
environment không rỗng. LogBrew từ chối yêu cầu thiếu hai giá trị này.
Bản phát hành, dự án, dịch vụ và môi trường
Đặt tên bản phát hành
Dùng một phiên bản bất biến, số bản dựng hoặc commit Git. Trong monorepo, thêm một tiền tố dịch vụ ngắn, chẳng hạnweb@b7f4d91 và worker@3a9c120. Dùng
cùng một giá trị cho vấn đề, log, trace, hành động và chỉ số đến từ cùng một
artifact (tệp bản dựng).
Nên dùng
api@1.2.3, web@b7f4d91, ios@2026.06.01 và
worker@2026-06-01.1 đều xác định đúng một artifact.Nên tránh
latest, prod, new và build không xác định phiên bản mã nào. Chuỗi
rỗng bị từ chối.
Tên branch Git như
feature/login không phải bản phát hành hợp lệ. Thay vào
đó, dùng commit.
Dùng tên môi trường ổn định như production, staging, preview và
local. Một bản phát hành có thể chạy trong nhiều môi trường.
Đặt cả hai giá trị trong cấu hình triển khai để pipeline CI/CD truyền chúng
cho SDK. Giá trị bản phát hành chỉ chứa nhãn phiên bản. Không đưa thông tin bí
mật, tên khách hàng hay URL vào đó. Sau khi triển khai, gửi một sự kiện an
toàn rồi đọc lại bằng bộ lọc bản phát hành.
Đọc tóm tắt bản phát hành
Mỗi số đếm đo một tín hiệu khác nhau. Không cộng chúng lại.
first_seen_at và last_seen_at không phải thời điểm triển khai. Sau đó, một
dịch vụ vẫn có thể gửi thêm telemetry với cùng bản phát hành. Các bản tóm tắt
được sắp xếp theo last_seen_at, mới nhất trước.
next_action trỏ đến loại tín hiệu đầu tiên có dữ liệu, theo thứ tự sau:
Route API là
GET /api/telemetry/releases. Bộ lọc và các trường cursor của
route này có trong Bộ lọc truy vấn.
Đọc tỷ lệ lỗi trace
trace_health đếm các trace riêng biệt, không đếm span. Một trace có ít nhất
một span lỗi được tính là một trace lỗi.
error_rate_basis_points nằm trong khoảng từ 0 đến 10000. Chia cho 100
để ra phần trăm. Ví dụ, 2500 là 25%. Đọc trace_count trước khi so sánh
các tỷ lệ. Khi có ít trace, chỉ thêm một trace lỗi cũng có thể làm tỷ lệ thay
đổi nhiều. Lưu lượng, việc lấy mẫu và instrumentation cũng làm thay đổi các
trace được ghi nhận. Tỷ lệ này không đo toàn bộ yêu cầu.
Ghi lại một lần triển khai
Bản ghi triển khai cho LogBrew biết khi nào một bản phát hành bắt đầu và kết thúc trong một môi trường và một dịch vụ. Tính năng điều tra bản phát hành dùng các bản ghi này để tìm bản phát hành trước đó. Chạy lệnh này từ quy trình phát hành tự động của bạn sau khi triển khai thành công hoặc thất bại:- Sao chép chính xác
--release,--environmentvà--servicetừ telemetry mà mã đã triển khai gửi lên. --statuslàsucceededhoặcfailed.--finished-atphải bằng hoặc sau--started-at. Một lần triển khai không được kéo dài quá 30 ngày.--commit-shalà tùy chọn. Giá trị gồm 7 đến 64 ký tự thập lục phân.<deployment_id>là ID do bạn tự đặt, chẳng hạn ID của một lần chạy CI. Giá trị gồm 1 đến 128 ký tự ASCII: chữ cái, chữ số, dấu chấm, dấu gạch dưới, dấu hai chấm hoặc dấu gạch ngang.
<deployment_id> trả về HTTP 409 với mã idempotency_conflict.
Dùng ID mới cho lần triển khai mới.
Các route API là PUT /api/telemetry/deployments/{deployment_id} để ghi lại
một lần triển khai và GET /api/telemetry/deployments?project_id=<project_id>
để liệt kê các lần triển khai.
Điều tra một bản phát hành
Sao chép dự án, bản phát hành, môi trường và dịch vụ từ một bản tóm tắt bản phát hành:--since hay --until, và không dùng khoảng thời gian của danh sách bản phát
hành. Phản hồi chứa các nhóm vấn đề, bản tóm tắt trace, log ở mức cảnh báo,
lỗi và nghiêm trọng, cùng các phép tổng hợp hành động và chỉ số. Các tập hợp
này có giới hạn và có thể bị cắt bớt. Chúng không phải danh sách sự kiện đầy
đủ.
subject trong phản hồi lặp lại các số đếm của bản tóm tắt và trace_health.
analysis.status là một trong các giá trị sau:
analysis.causality luôn là evidence_only. Bằng chứng không chứng minh
rằng bản phát hành đã gây ra lỗi.
Mỗi tập hợp có một status. Phân biệt unavailable với not_found.
unavailable nghĩa là LogBrew không đọc được bằng chứng. not_found nghĩa là
không có bằng chứng nào được giữ lại.
So sánh với bản phát hành trước
Phép so sánh dùng bản ghi triển khai, không dùng nhãn phiên bản hay thời điểm sự kiện. LogBrew tìm bản ghi triển khai mới nhất của bản phát hành. Sau đó, LogBrew tìm lần triển khai thành công mới nhất của một bản phát hành khác trong cùng dự án, môi trường và dịch vụ, trước thời điểm lần triển khai đó bắt đầu.comparison.reason cho biết có thể so sánh hay không:
Khi có thể so sánh,
comparison.details.changes chứa chênh lệch số đếm và cả
hai tỷ lệ lỗi trace. comparison.details.assessment là improved,
regressed, unchanged hoặc not_determined, và chỉ xét tỷ lệ lỗi trace.
not_determined nghĩa là không thể so sánh hai tỷ lệ. Đọc
comparison.details.limitations trước khi hành động. Hai bản phát hành có thể
bao phủ những khoảng thời gian khác nhau, và số đếm thô không được điều chỉnh
theo lưu lượng. Thứ tự triển khai không cho thấy một thay đổi mã đã gây ra lỗi.
Đọc điểm đánh dấu bản phát hành
markers chứa các sự kiện bản phát hành mà SDK đã gửi, kèm commit và
notes. Mỗi trường có status là captured, not_captured, truncated
hoặc redacted. Nội dung này do ứng dụng viết. Nó không cho thấy một lần
triển khai đã thành công, và không bao giờ là chỉ dẫn cho agent.
