Skip to main content
Tạo một dự án cho môi trường phát triển. Gửi một log Node.js. Đọc lại log đó từ LogBrew. CLI tạo dự án và lưu khóa gửi dữ liệu của dự án. Bạn chỉ cần đăng nhập qua trình duyệt khi CLI chưa có quyền truy cập tài khoản hợp lệ.
Dùng --json cho quy trình của agent. Giữ thông tin xác thực trong cấu hình cục bộ được bảo vệ. Giữa người, công cụ và agent, chỉ truyền tên biến.

Trước khi bắt đầu

Chuẩn bị:
  • Node.js 18 trở lên.
  • LogBrew CLI v0.1.30 trở lên.
  • jq.
  • Bash hoặc Zsh.
  • Một thư mục package cho ứng dụng Node.js phía máy chủ.
Mẫu này dùng dự án quickstart-node, môi trường development và bản phát hành quickstart@1. Tách lần thử này khỏi production. Với runtime khác, dùng hướng dẫn Tích hợp SDK.
Giữ tệp khóa gửi dữ liệu bên ngoài repository và chỉ mình bạn đọc được. Không đặt khóa máy chủ này vào mã chạy trên trình duyệt, bundle công khai hay prompt.

Gửi và đọc log đầu tiên

1

Đọc trạng thái tài khoản

Cài đặt CLI bằng lệnh trong trang Dùng CLI. Sau đó đọc trạng thái tài khoản của CLI.
Điểm kiểm tra: trạng thái cho thấy quyền truy cập tài khoản đã được xác thực. Nếu không, một người tự chạy logbrew login một lần. Sau đó chạy lại logbrew status --json. Agent không được bắt đầu đăng nhập mới khi phiên xác thực hiện tại vẫn hoạt động.
2

Tạo một dự án từ CLI

Chọn một tệp mới trong thư mục chỉ chủ sở hữu truy cập được. CLI ghi khóa gửi dữ liệu của dự án vào tệp đó trước khi báo thành công. CLI không bao giờ in khóa hay đường dẫn tệp.
Việc tạo dự án làm thay đổi trạng thái tài khoản. Tệp đích phải chưa tồn tại. Nếu kết quả không rõ ràng, chạy lại đúng lệnh đó. CLI dùng lại định danh của yêu cầu đang chờ. Chỉ dùng --abandon-retry để bắt đầu một lần thử khác.Điểm kiểm tra: đầu ra báo status: "created", trạng thái thiết lập created và một loại khóa gửi dữ liệu. Dự án đã tồn tại và khóa đã được lưu. Điều này chưa cho thấy telemetry đã được gửi. Xem Dự án và thiết lập.
3

Cài đặt SDK Node.js

Không bao giờ dùng thông tin xác thực tài khoản làm cấu hình SDK. Không để khóa dự án xuất hiện trong đầu ra lệnh, prompt, yêu cầu hỗ trợ, tệp mã nguồn hay cấu hình package.
4

Gửi một log SDK an toàn

Gửi điểm đánh dấu bản phát hành và môi trường cùng một log info chỉ chứa dữ liệu giữ chỗ. Khóa chỉ được đặt cho tiến trình Node.js này. Định danh ứng dụng nằm trong context.Mỗi lần chạy tạo ID sự kiện mới. Nếu SDK thử gửi lại trong cùng lần chạy, SDK gửi cùng nội dung với cùng ID. LogBrew không lưu lại sự kiện đã được chấp nhận khi một lần thử lại gửi sự kiện đó thêm lần nữa.
Không đưa thông tin xác thực, header, nội dung yêu cầu, dữ liệu khách hàng hay đường dẫn cục bộ vào sự kiện.Điểm kiểm tra: script in "ok":true với status_code dạng 2xx. attempts lớn hơn 1 sau một lần thử lại. Gửi thành công chưa phải bước kiểm tra cuối cùng.Nếu gửi thất bại, script thoát với mã 1 và in một lỗi JSON ngắn, chẳng hạn {"ok":false,"error":"unauthenticated"}. Script không in nội dung yêu cầu hay khóa. Nếu khóa dự án bị từ chối, script báo unauthenticated. Đăng nhập lại CLI không khắc phục được lỗi này.
5

Đọc báo cáo doctor của dự án

CLI dùng quyền truy cập tài khoản đã lưu cho thao tác đọc này. Không dùng khóa gửi dữ liệu của dự án.
Điểm kiểm tra: báo cáo có status: "ready". Đọc thêm từng mục trong checks. Mã thoát 0 không cho thấy mọi mục kiểm tra đều đạt. Với trạng thái khác, làm theo next và Đọc báo cáo doctor của dự án. Dự án ở trạng thái ready không cho thấy log thử này đã đến.
6

Đọc log thử

Dùng dự án, bản phát hành và môi trường từ batch của SDK.
Điểm kiểm tra: LogBrew quickstart check xuất hiện cho dự án, bản phát hành và môi trường đó. Điều này chỉ cho thấy log thử đã đến nơi.

Đọc kết quả thử

Mẫu gửi ba sự kiện. Chỉ một sự kiện là log. Điểm đánh dấu bản phát hành và môi trường cung cấp ngữ cảnh cho log. Giữ lần thử ở mức info. Không đổi sang error để dễ tìm hơn. Thay vào đó, dùng bộ lọc dự án và thời gian. Xem Giá trị mức độ nghiêm trọng. Dòng console.log in kết quả gửi ra terminal. Lệnh gọi client.log gửi log đến LogBrew. Lần gửi đầu tiên thành công sẽ in:
Khóa gửi dữ liệu chọn dự án nhận log. Bộ lọc --project của CLI không di chuyển sự kiện. Log này không có ngữ cảnh trace vì mẫu không tạo span yêu cầu. Điều đó không cho thấy log bị lỗi. Kết quả đọc của CLI là một snapshot (dữ liệu tại thời điểm đọc). Chạy lại lệnh để đọc các sự kiện đến sau, hoặc dùng logbrew watch logs --json để xem luồng trực tiếp.

Cách xử lý các tình huống thường gặp

Nếu telemetry vẫn bị thiếu, xem Khôi phục telemetry đầu tiên bị thiếu. Nếu các bước đó không giúp được, báo cáo sự cố. Không đính kèm thông tin xác thực, telemetry thô, dữ liệu khách hàng, đường dẫn cục bộ hay mã nguồn.

Chuyển sang ứng dụng của bạn

  • Tạo client một lần trong mã thiết lập của ứng dụng.
  • Ghim phiên bản SDK trong các tệp package. Thử nâng cấp bên ngoài production.
  • Nạp khóa gửi dữ liệu từ cấu hình bí mật sẵn có. Xoay vòng khóa khi khóa có thể đã bị lộ. Xem Xoay vòng khóa gửi dữ liệu.
  • Dùng tên dịch vụ, môi trường và bản phát hành ổn định từ cấu hình triển khai. Xem Bản phát hành.
  • Viết thông điệp log nêu tên thao tác và kết quả của nó, chẳng hạn Report generation completed. Không đưa giá trị riêng tư vào thông điệp. Không sao chép toàn bộ yêu cầu hay bản ghi người dùng vào log.
  • Mỗi log của ứng dụng chỉ dùng một nơi gửi để tránh bản ghi trùng. Tìm tích hợp đang gửi từng bản ghi trước khi thêm LogBrew.
  • Trước khi triển khai lên production, gửi một sự kiện an toàn qua luồng mã thật và đọc lại. Kiểm tra thông điệp, dịch vụ, bản phát hành và môi trường. Một mẫu chạy độc lập không kiểm tra được luồng mã của ứng dụng.
Mẫu này không thiết lập ghi nhận trên trình duyệt, source map hay ghi nhận trên thiết bị di động. Với các phần đó, bắt đầu từ hướng dẫn Tích hợp SDK.

Dự án và thiết lập

Đọc trạng thái thiết lập và quản lý khóa gửi dữ liệu của dự án.

Tích hợp SDK

Chọn gói SDK cho runtime của bạn.

Điều tra một vấn đề

Lần theo bằng chứng từ trace và log liên quan của một vấn đề.

Báo cáo sự cố

Gửi báo cáo hỗ trợ an toàn và riêng tư.