Storm UI详解
Posted 汤高
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Storm UI详解相关的知识,希望对你有一定的参考价值。
Storm ui 展示字段说明- Storm ui 首页主要分为4块: Cluster Summary,Topology summary,Supervisor summary,Nimbus Configuration,如下图所示:
- Cluster Summary
Version: storm 版本号
Nimbus uptime: nimbus 运行时间
Supervisor:storm集群中supervisor的数目
User slots:使用的slots数Free slots:剩余的slots数
Total slots:总的slots 数(对应配置文件的supervisor.slots.ports 属性配置的端口数,集群的总和)
Executors:线程数
Tasks:任务数
- Topology summary
Name : topology 名称
Id: 系统生成的topology id
Status: 运行状态(ACTIVE, INACTIVE, KILLED, REBALANCING)
Uptime:运行时间
Num workers: 运行的 workers 数
Num Exectors: workers 运行的线程数
Num Tasks: Excetors 运行的任务数
- Supervisor summary
Id: 系统生成的 supervisor Id
Host: supervisor(主机)的主机名
Uptime:运行时间
Slots:supervisor的端口数
User slots: 使用的端口数
- Nimbus Configuration
是 nimbus 集群中的配置文件信息,不在详细解说(关键的可以在storm 安装章节查看)
2 Topology 页面
Topology 页面主要分6块:Topology summary,Topology actions,Topology stats,Spouts (All time),Bolts (All time),Topology Visualization,Topology Configuration
- Topology summary
同 首页中的 Topology summary
- Topology actions
Topology 运行状态,可以手动更改状态(ACTIVE, DEACTIVATE, KILLED, Rebalance)
- Topology stats
Window:时间窗口,显示10m、3h、1d和all time的运行状况
Emitted: emit tuple数
Transferred : transferred tuple数, 说下与emitted的区别:如果一个task,emitted一个tuple到2个task中,则transferred tuple数是emitted tuple数的两倍
complete latency: spout emitting 一个tuple到spout ack这个tuple的平均时间
Acked:成功 tuple数
Failed:失败tuple数
emitted栏显示的数字表示的是调用OutputCollector的emit方法的次数.
transferred栏显示的数字表示的是实际tuple发送到下一个task的计数.
如果一个bolt A使用all group的方式(每一个bolt都要接收到)向bolt B发射tuple, 此时bolt B启动了5个task, 那么trasferred显示的数量将是emitted的5倍.
如果一个bolt A内部执行了emit操作, 但是没有指定tuple的接受者, 那么transferred将为0.
有的bolt的execture方法中并没有emit tuple, 但是storm ui中依然有显示emitted, 主要是因为它调用了ack方法, 而该方法将emit ack tuple到系统默认的acker bolt. 因此如果anchor方式emit一个tuple, emitted一般会包含向acker bolt发射tuple的数量.
另外collector.emit(new Values(xxx))和collector.emit(tuple, new Values(xxx)) 这两种不同的emit方法也会影响后面bolt的emitted和transferred, 如果是前者, 则后续bolt的emited tuple 和transferred tuple这两个值都是0, 因为前一个emit方法是非安全的, 不再使用acker来进行校验.
- Spouts (All time)
Id: spout id
Executors:线程数
Emitted: emit tuple数
Transferred : transferred tuple数,
complete latency: spout emitting 一个tuple到spout ack这个tuple的平均时间
Acked:成功 tuple数
Failed:失败tuple数
Error Host: 发生错误的机器
Error Port: 发生错误的端口号
last error: 最近的错误数
- Bolts (All time)
Execute latency(ms) : bolt 执行 execute 方法的平均时间
Executed: tuple 处理数
Process latency(ms):bolt收到一个tuple到bolt ack这个tuple的平均时间
注:其他字段都在上面讲过,就不在说明
- Topology Visualization
拓扑图展示
- Topology Configuration
配置说明,不在详解
注 spout,bolt 页面可以参考topology 页面中的 spout,bolt 中的字段说明
以上是关于Storm UI详解的主要内容,如果未能解决你的问题,请参考以下文章
Storm笔记整理:Storm本地开发案例—总和计算与单词统计