概述
Slot 和 block 监控提供了对 Solana 网络共识、区块生成时间和网络健康状况的洞察。实时跟踪 slot 进展、区块最终化和网络性能指标。先决条件: 本指南假设您已完成 Yellowstone gRPC 快速入门 并已设置好工作流。
监控类型
- Slot 更新
- Block 数据
- Block 元数据
跟踪网络共识进展监控不同承诺级别的 slot 进展:Slot 数据包括:
- Slot 编号
- 父 slot
- 承诺状态(已处理、已确认、已最终化)
- 领导者信息
最佳用途: 网络健康监控、slot 时间分析、共识跟踪
实用示例
示例 1:网络健康监控
跟踪 slot 进展并识别网络问题:示例 2:区块生成监控
跟踪区块生成和交易量:示例 3:过滤区块监控
监控包含特定程序活动的区块:数据结构
理解插槽和区块数据格式:插槽数据结构
插槽数据结构
- 已处理: 初始插槽处理
- 已确认: 超级多数确认
- 已最终确定: 不可逆的最终确定
区块元数据结构
区块元数据结构
完整区块结构
完整区块结构
性能考虑
插槽监控
轻量且高效
- 非常低的带宽使用
- 实时网络健康洞察
- 最小的处理开销
- 适合监控仪表板
区块元数据
平衡的方法
- 中等带宽使用
- 区块级洞察而非完整数据
- 交易计数和时间
- 适合分析
完整区块
高容量数据
- 高带宽要求
- 完整的交易数据
- 需要强大的处理能力
- 使用过滤器减少数据量
过滤区块
优化的流媒体
- 使用 accountInclude 过滤器
- 禁用不必要的数据(条目,账户)
- 专注于特定程序
- 在细节和性能之间取得平衡
用例
- 网络监控
- 分析与指标
- 应用程序同步
跟踪网络健康和性能
- 插槽时间分析
- 网络拥塞检测
- 共识监控
- 验证者性能
错误处理
常见问题和解决方案:缺失的插槽
缺失的插槽
问题: 插槽进程中断原因:
- 网络连接问题
- 验证者停机
- 客户端处理延迟
- 跟踪插槽间隙并警报
- 实施追赶逻辑
- 监控连接健康状况
高流量
高流量
问题: 区块数据过多解决方案:
- 使用区块元数据而不是完整区块
- 应用账户过滤器以减少数据
- 禁用不必要的包含(条目,账户)
- 异步处理数据
时间问题
时间问题
问题: 插槽时间不一致分析:
- 计算移动平均值
- 跟踪时间偏差
- 监控网络健康指标
- 与验证者性能相关联
最佳实践
生产指南:
- 从元数据开始 - 在完整区块之前使用区块元数据
- 应用过滤器 - 使用 accountInclude 减少无关数据
- 监控时间 - 跟踪插槽进程以了解网络健康状况
- 处理间隙 - 实施缺失插槽/区块的逻辑
- 异步处理 - 不要用繁重的计算阻塞流处理
- 使用适当的承诺 - 根据需要匹配承诺级别