菜单

监控

相关源文件

目的与范围

本文档提供了关于监控 Base 节点健康、性能和状态的详细指南。它涵盖了可用的指标端点、同步状态监控、日志分析以及与外部监控工具的集成。有关节点特定问题的故障排除信息,请参阅故障排除

监控架构

Base 节点公开了多个监控接口,允许操作员跟踪节点健康和性能。监控架构集成了 op-node(共识客户端)和执行客户端组件。

来源:.env.mainnet27-30 .env.sepolia24-27 README.md112-122

可用的监控接口

Base 节点公开了多个接口,用于监控其健康和性能。

组件接口默认端口目的
op-nodeMetrics 端点7300Prometheus 指标
op-nodeRPC 端点8545状态查询和节点控制
op-node日志不适用调试和操作信息
执行客户端RPC 端点8545以太坊 JSON-RPC API
执行客户端WebSocket8546实时更新
执行客户端评估指标因客户端而异性能指标
执行客户端EthStats可选网络可视化

来源:.env.mainnet27-30 .env.mainnet7-10 .env.sepolia7-10

指标端点

op-node 和执行客户端都公开了兼容 Prometheus 的指标端点,可以对其进行抓取以获取详细性能数据。

Op-node 指标配置

在主网和测试网环境中,op-node 指标端点默认启用,具有以下配置:

OP_NODE_METRICS_ADDR=0.0.0.0
OP_NODE_METRICS_ENABLED=true
OP_NODE_METRICS_PORT=7300

此配置在所有网络接口上通过端口 7300 公开指标端点。

来源:.env.mainnet27-30 .env.sepolia24-27

执行客户端指标

每个支持的执行客户端都有不同的指标功能。

  • Geth:在 /debug/metrics/prometheus 端点上公开 Prometheus 指标。
  • Reth:通过专用的指标端点提供指标。
  • Nethermind:支持 Prometheus 指标收集。

同步状态监控

监控同步状态对于确保您的节点正确跟踪 Base 链至关重要。op-node 公开了一个专门的 RPC 方法来实现此目的。

使用 optimism_syncStatus RPC 方法

您可以使用以下命令查询节点的同步状态:

这将返回有关当前同步状态的详细信息,包括:

  • 最后同步的 L1 块
  • 最后同步的 L2 块
  • 节点是否仍在同步
  • 时间戳信息

计算同步延迟

README 中提供了一个有用的脚本,用于检查您的节点落后了多少。

该脚本计算当前时间与最后同步的 L2 块之间的时间戳之间的差值,以分钟为单位提供延迟。

来源:README.md112-122

日志监控

日志提供了对节点运行的宝贵见解,并有助于解决问题。

Op-node 日志配置

op-node 的日志级别在环境文件中配置。

OP_NODE_LOG_LEVEL=info

来源:.env.mainnet23 .env.sepolia23

日志分析工作流

来源:.env.mainnet23 .env.sepolia23

设置外部监控

对于生产节点,强烈建议集成外部监控工具。

Prometheus 和 Grafana 设置

用于抓取 Base 节点指标的基本 Prometheus 配置

EthStats 集成

对于 Geth,您可以通过在环境文件中取消注释并配置以下行来启用 EthStats 报告:

OP_GETH_ETH_STATS=nodename:secret@host:port

对于 Nethermind,您可以通过以下方式启用 EthStats:

OP_NETHERMIND_ETHSTATS_ENABLED=true
OP_NETHERMIND_ETHSTATS_NODE_NAME=YourNodeName
OP_NETHERMIND_ETHSTATS_ENDPOINT=ethstats_endpoint

来源:.env.mainnet7-10 .env.sepolia7-10

全面的监控数据流

下图说明了监控 Base 节点的完整数据流,包括指标收集、日志聚合和警报生成。

来源:.env.mainnet7-10 .env.mainnet27-30 README.md112-122

要监控的关键指标

在为 Base 节点设置监控时,请关注以下关键指标:

类别指标描述警告信号
同步状态同步延迟当前时间与最新区块之间的时间差滞后超过 10 分钟
系统资源CPU 使用率处理器利用率持续高于 80%
系统资源内存使用RAM 消耗超过 90% 的可用内存
系统资源磁盘使用情况存储消耗超过 85% 的可用空间
系统资源磁盘 I/O读/写操作高延迟(>100 毫秒)
网络对等节点数量连接的对等节点数少于 3 个对等节点
网络带宽网络流量(入/出)持续高使用率
性能区块处理时间处理新区块的时间随时间推移而增加
错误(Errors)错误率日志中的错误计数任何突然增加

对于生产环境的 Base 节点,我们推荐:

  1. 基本监控:设置 Prometheus 和 Grafana 进行指标可视化。
  2. 日志聚合:收集和集中日志,方便分析。
  3. 自动化检查:实施脚本以定期验证同步状态。
  4. 警报:为关键指标超过阈值配置警报。
  5. 仪表板:创建一个全面的仪表板,显示节点健康状况。

结论

有效的监控对于维护可靠的 Base 节点至关重要。通过监控同步状态、系统资源和网络连接,您可以及早发现并解决问题,防止其影响性能或可靠性。

op-node 和执行客户端内置的监控接口提供了用于跟踪节点健康和性能的全面数据。对于生产环境,强烈建议集成 Prometheus 和 Grafana 等外部监控工具,以确保可靠运行。