区块链服务程序是一个 7x24 小时的工作软件,节点分布在不同网络的主机中。作为运维人员,需要关注服务是否正常工作,包括服务中的区块链数据是否能够正常同步、软件进程是否存活、用来存储数据的空间是否足够、其他节点是否正常工作等,因此一个能够实时、直观了解这些指标,并且在运维人员没有主动关注时,也能及时收到服务异常告警通知的监控系统,是十分重要且必要的。
因此,为了给运维人员提供更好的用户体验,秘猿科技研发并开源了 CITA-Monitor 监控系统, 用以监控 CITA 区块链服务运行状态。
CITA-Monitor 监控的指标包括:区块链数据、服务进程状态、运行环境的 CPU /存储器/磁盘使用率等主机信息等。
仪表板截图
为了能够让数据情况能够一目了然,我们开发了数据可视化面板,节点管理员可以轻松了解节点的运行健康状态。此外,我们还内置了关键的告警规则,例如服务进程状态告警,如微服务、依赖服务进程存活;区块链数据状态告警,如出块高度、出块间隔时间、交易数据的 TPS;运行环境状态警告,如磁盘空间不足,经过简单配置收发邮箱即可第一时间收到相关告警邮件。
功能列表
- CITA 服务进程监控
CITA 微服务及MQ进程的存活、进程的 CPU、内存使用率、IO
- 区块链数据健康监控
节点出块高度历史、出块时间、出块间隔趋势、Quota、交易量历史、TPS、磁盘占用比例、数据目录大小增长趋势
- 运行环境监控
主机运行环境的系统负载、CPU、内存、磁盘空间使用情况、网络流量、TCP 连接数等
- 故障告警通知
支持邮件通知、Slack 通知、短信通知(Pro 版)
- 节点网络监控(Pro 版)
连接节点数、网络拓扑、地理位置等
- 鉴源限流(Pro 版)
鉴别请求来源、工具;限制访问来源、频率
- JSONRPC 接口调用分析(Pro 版)
统计分析 RPC 方法的请求时间、请求次数
仪表板的监控指标
- Summary Dashboard
节点列表
各节点最新块高
各节点 CPU 使用率变化
各节点监控进程存活
- CITA Node Info Dashboard
Node Info - 选定节点的详细信息,包括区块链数据、运行环境、运行软件信息
CITA Meta Data - 链的配置信息,如 Chain Name、创建时间等
Chain Info - 链的最新块高、共识节点数、共识节点出块历史趋势
- Host Info Dashboard
各节点运行主机的信息,包括系统负载、CPU、内存、硬盘使用率、网络流量
- Process Info Dashboard
节点中 CITA 微服进程的存活历史、CPU、内存、IO 变化历史
- RabbitMQ Dashboard
RabbitMQ 服务的存活状态、channels 、consumers、connections、queues 等的变化记录
更细节可查看: