Skip to main content
Tính năng giám sát slot và khối giúp bạn quan sát cơ chế đồng thuận, thời gian tạo khối và tình trạng tổng thể của mạng Solana. Với LaserStream, bạn có thể theo dõi tiến trình slot, quá trình hoàn tất khối và các chỉ số hiệu suất mạng theo thời gian thực bằng SDK helius-laserstream.
Điều kiện tiên quyết: Hướng dẫn này giả định rằng bạn đã hoàn thành Hướng dẫn bắt đầu nhanh với LaserStream gRPC và có khóa API.

Các loại giám sát

Theo dõi tiến trình đồng thuận của mạngGiám sát tiến trình slot trên các mức cam kết:
Dữ liệu slot bao gồm: số slot, slot cha, trạng thái cam kết (processed / confirmed / finalized) và thông tin leader.
Phù hợp nhất cho: Giám sát tình trạng mạng, phân tích thời gian slot, theo dõi đồng thuận.

Ví dụ thực tế

Ví dụ 1: Trình giám sát tình trạng mạng

Theo dõi tiến trình slot và xác định các sự cố mạng:

Ví dụ 2: Trình giám sát quá trình tạo khối

Theo dõi quá trình tạo khối và khối lượng giao dịch:

Ví dụ 3: Trình giám sát khối đã lọc

Giám sát các khối chứa hoạt động của chương trình cụ thể:

Cấu trúc dữ liệu

Mỗi slot đại diện cho khoảng 400 mili giây thời gian mạng. Ba mức cam kết phản ánh mức đảm bảo tăng dần: processed (ban đầu), confirmed (được đa số áp đảo bỏ phiếu), finalized (không thể đảo ngược).
Các trường u64 (slot, parent) được trả về dưới dạng chuỗi để duy trì độ chính xác vượt quá Number.MAX_SAFE_INTEGER. Chuyển đổi bằng Number(slot.slot) khi cần thực hiện phép toán. status là một enum dạng số — sử dụng CommitmentLevel[slot.status] để lấy tên mà con người có thể đọc được.
Các trường số (slot, parentSlot, executedTransactionCount, entriesCount, các giá trị bên trong blockHeight và blockTime) được xuất dưới dạng chuỗi vì chúng là u64 trong proto cơ sở. Bao chúng bằng Number(...) để thực hiện phép toán hoặc so sánh.
Các khối đầy đủ có thể có kích thước vài MB khi chứa toàn bộ giao dịch và tài khoản. Quy ước biểu diễn u64 dưới dạng chuỗi cũng được áp dụng — bao các trường số bằng Number(...) để thực hiện phép toán. Bên trong mỗi giao dịch, meta.fee, meta.preBalances, meta.postBalances, v.v. cũng là các chuỗi.

Các yếu tố cần cân nhắc về hiệu suất

Slot Monitoring

Gọn nhẹ: băng thông rất thấp, chi phí xử lý tối thiểu. Phù hợp cho các bảng điều khiển giám sát.

Block Metadata

Cân bằng: băng thông vừa phải, cung cấp thông tin chuyên sâu ở cấp khối mà không cần toàn bộ dữ liệu. Phù hợp cho hoạt động phân tích.

Full Blocks

Lưu lượng lớn: dữ liệu giao dịch đầy đủ, yêu cầu khả năng xử lý mạnh mẽ. Luôn kết hợp với các bộ lọc.

Filtered Blocks

Được tối ưu hóa: sử dụng accountInclude, tắt includeAccounts/includeEntries nếu không cần.

Trường hợp sử dụng

Theo dõi tình trạng và hiệu suất mạng — thời gian slot, tắc nghẽn, đồng thuận.

Xử lý lỗi

Triệu chứng: Có khoảng trống trong tiến trình slot.Nguyên nhân: Sự cố kết nối mạng, validator ngừng hoạt động, độ trễ xử lý phía máy khách.Giải pháp: Theo dõi và cảnh báo khoảng trống slot; triển khai logic bắt kịp thông qua phát lại dữ liệu lịch sử; giám sát tình trạng kết nối.
Triệu chứng: Có quá nhiều dữ liệu khối.Giải pháp: Sử dụng siêu dữ liệu khối thay cho khối đầy đủ; áp dụng bộ lọc tài khoản; tắt các nội dung không cần thiết (mục nhập, tài khoản); xử lý bất đồng bộ.
Triệu chứng: Thời gian slot không nhất quán.Phân tích: Tính trung bình động; theo dõi độ lệch; giám sát các chỉ số tình trạng mạng; đối chiếu với hiệu suất của validator.

Các phương pháp hay nhất

Hướng dẫn cho môi trường production:
  • Bắt đầu với siêu dữ liệu — sử dụng siêu dữ liệu khối trước khi đăng ký nhận các khối đầy đủ
  • Áp dụng bộ lọc — sử dụng accountInclude để loại bỏ dữ liệu không liên quan
  • Giám sát thời gian — theo dõi tiến trình slot như một chỉ báo cảnh báo sớm về tình trạng mạng
  • Xử lý khoảng trống — kết hợp với phát lại dữ liệu lịch sử để các slot bị thiếu được tự động bổ sung khi kết nối lại
  • Xử lý bất đồng bộ — không chặn quá trình xử lý luồng bằng các phép tính nặng
  • Chọn mức cam kết phù hợp với nhu cầu — processed cho giao diện người dùng có độ trễ thấp, confirmed/finalized cho thao tác ghi trạng thái

Các bước tiếp theo

Transaction Monitoring

Lọc giao dịch theo chương trình, tài khoản, phiếu bầu hoặc trạng thái lỗi.

Stream Pump AMM Data

Ví dụ thực tế: giám sát các giao dịch Pump AMM.

Decoding Transaction Data

Phân tích các payload nhị phân transactionUpdate thành các giao dịch Solana có thể đọc được.

Yellowstone protocol reference

Quy trình tương tự khi làm việc trực tiếp với giao thức Yellowstone gRPC thô.