Flume监控指标项
配置监控
1、修改flume-env.sh
export JAVA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port= -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
2、使用以下启动命令
flume-ng agent \
-n a1 \
-c $FLUME_HOME/conf \
-f $FLUME_HOME/conf/exec-memory-hdfs-partition.conf \
-Dflume.root.logger=INFO,console \
-Dflume.monitoring.type=http \
-Dflume.monitoring.port=1234
指标项整理
OS监控项
| objectName | 指标项 | 说明 |
|---|---|---|
| java.lang:type=OperatingSystem | FreePhysicalMemorySize | 空闲物理内存 |
| java.lang:type=OperatingSystem | SystemCpuLoad | 系统CPU利用率 |
| java.lang:type=OperatingSystem | ProcessCpuLoad | 进程CPU利用率 |
| java.lang:type=GarbageCollector,name=PS Scavenge | CollectionCount | GC次数 |
json数据格式
# curl http://localhost:/metrics
{
"SOURCE.src-1":{
"OpenConnectionCount":"0",
"Type":"SOURCE",
"AppendBatchAcceptedCount":"1355",
"AppendBatchReceivedCount":"1355",
"EventAcceptedCount":"28286",
"AppendReceivedCount":"0",
"StopTime":"0",
"StartTime":"1442566410435",
"EventReceivedCount":"28286",
"AppendAcceptedCount":"0"
},
"CHANNEL.ch-1":{
"EventPutSuccessCount":"28286",
"ChannelFillPercentage":"0.0",
"Type":"CHANNEL",
"StopTime":"0",
"EventPutAttemptCount":"28286",
"ChannelSize":"0",
"StartTime":"1442566410326",
"EventTakeSuccessCount":"28286",
"ChannelCapacity":"1000000",
"EventTakeAttemptCount":"313734329512"
},
"SINK.sink-1":{
"Type":"SINK",
"ConnectionClosedCount":"0",
"EventDrainSuccessCount":"28286",
"KafkaEventSendTimer":"482493",
"BatchCompleteCount":"0",
"ConnectionFailedCount":"0",
"EventDrainAttemptCount":"0",
"ConnectionCreatedCount":"0",
"BatchEmptyCount":"0",
"StopTime":"0",
"RollbackCount":"9",
"StartTime":"1442566411897",
"BatchUnderflowCount":"0"
}
}
指标项说明
source监控项
| objectName (会随实际情况而变化) |
指标项 | 说明 |
|---|---|---|
| org.apache.flume.source:type=r1 | OpenConnectionCount | 目前与客户端或sink保持连接的总数量 |
| org.apache.flume.source:type=r1 | AppendBatchAcceptedCount | 成功提交到channel的批次的总数量 |
| org.apache.flume.source:type=r1 | AppendBatchReceivedCount | 接收到事件批次的总数量 |
| org.apache.flume.source:type=r1 | AppendAcceptedCount | 逐条录入的次数 |
| org.apache.flume.source:type=r1 | AppendReceivedCount | 每批只有一个事件的事件总数量 |
| org.apache.flume.source:type=r1 | EventAcceptedCount | 成功写出到channel的事件总数量 |
| org.apache.flume.source:type=r1 | EventReceivedCount | 目前为止source已经接收到的事件总数量 |
| org.apache.flume.source:type=r1 | StartTime | source启动时的毫秒值时间 |
| org.apache.flume.source:type=r1 | StopTime | source停止时的毫秒值时间,为0表示一直在运行 |
channel监控项
| objectName (会随实际情况而变化) |
指标项 | 说明 |
|---|---|---|
| org.apache.flume.channel:type=c1 | EventPutAttemptCount | Source尝试写入Channe的事件总次数 |
| org.apache.flume.channel:type=c1 | EventPutSuccessCount | 成功写入channel且提交的事件总次数 |
| org.apache.flume.channel:type=c1 | EventTakeAttemptCount | sink尝试从channel拉取事件的总次数。 |
| org.apache.flume.channel:type=c1 | EventTakeSuccessCount | sink成功从channel读取事件的总数量 |
| org.apache.flume.channel:type=c1 | ChannelSize | 目前channel中事件的总数量 |
| org.apache.flume.channel:type=c1 | ChannelCapacity | channel的容量 |
| org.apache.flume.channel:type=c1 | ChannelFillPercentage | channel已填入的百分比 |
| org.apache.flume.channel:type=c1 | StartTime | channel启动时的毫秒值时间 |
| org.apache.flume.channel:type=c1 | StopTime | channel停止时的毫秒值时间,为0表示一直在运行 |
sink监控项
| objectName (会随实际情况而变化) |
指标项 | 说明 |
|---|---|---|
| org.apache.flume.sink:type=k1 | ConnectionCreatedCount | 创建的连接数量 |
| org.apache.flume.sink:type=k1 | ConnectionClosedCount | 关闭的连接数量 |
| org.apache.flume.sink:type=k1 | ConnectionFailedCount | 由于错误关闭的连接数量 |
| org.apache.flume.sink:type=k1 | BatchEmptyCount | 批量处理event的个数为0的数量-表示source写入数据的速度比sink处理数据的速度慢 |
| org.apache.flume.sink:type=k1 | BatchUnderflowCount | 批量处理event的个数小于批处理大小的数量 |
| org.apache.flume.sink:type=k1 | BatchCompleteCount | 批量处理event的个数等于批处理大小的数量 |
| org.apache.flume.sink:type=k1 | EventDrainAttemptCount | sink尝试写出到存储的事件总数量 |
| org.apache.flume.sink:type=k1 | EventDrainSuccessCount | sink成功写出到存储的事件总数量 |
| org.apache.flume.sink:type=k1 | StartTime | channel启动时的毫秒值时间 |
| org.apache.flume.sink:type=k1 | StopTime | channel停止时的毫秒值时间,为0表示一直在运行 |
Flume启动关闭脚本:
# vim flume.sh
#!/bin/bash
path=/usr/local/apache-flume-1.9.-bin
JAR="flume"
Flumeconf="flume.conf"
agentname="agent1" function start(){
num=`ps -ef|grep java|grep $JAR|wc -l`
if [ "$num" = "" ] ;then
nohup $path/bin/flume-ng agent \
-c $path/conf -f $path/conf/$Flumeconf -n $agentname \
-Dflume.root.logger=INFO,LOGFILE -Dflume.log.dir=$path/logs \
-Dflume.monitoring.type=http -Dflume.monitoring.port= >/dev/null >& &
echo "start successful ......"
echo "日志路径: $path/logs/flume.log"
else
echo "进程已经存在,启动失败,请检查 ......"
exit
fi
} function stop(){
num=`ps -ef|grep java|grep $JAR|wc -l`
if [ "$num" != "" ];then
ps -ef|grep java|grep $JAR|awk '{print $2}'|xargs kill -9
echo "stop successful ......"
else
echo "服务未启动,无需停止 ......"
fi
} function restart(){
stop
num=`ps -ef|grep java|grep $JAR|wc -l`
while [ $num -gt ];do
sleep
num=`ps -ef|grep java|grep $JAR|wc -l`
done
start
echo "restarted successful ......"
} case "$1" in
"start") start ;;
"stop") stop ;;
"restart") restart ;;
*) ;;
esac
# sh flume.sh start
Flume监控指标项的更多相关文章
- kafka监控指标项
监控配置 kafka基本分为broker.producer.consumer三个子项,每一项的启动都需要用到 $KAFKA_HOME/bin/kafka-run-class.sh 脚本,在该脚本中 ...
- hbase 监控指标项
名词解释 JMX:Java Management Extensions,用于用于Java程序扩展监控和管理项 GC:Garbage Collection,垃圾收集,垃圾回收机制 指标项来源 主机名 u ...
- Hbase监控指标项
名词解释 JMX:Java Management Extensions,用于用于Java程序扩展监控和管理项 GC:Garbage Collection,垃圾收集,垃圾回收机制 指标项来源 主机名 u ...
- Hadoop监控指标项
配置 修改$HADOOP_HOME/etc/hadoop/hadoop-env.sh # 在配置namenode和datanode时都会有用到JMX_OPTS的代码,是为了减少重复提取出的公共代码 e ...
- Spark指标项监控
监控配置 spark的监控主要分为Master.Worker.driver.executor监控.Master和Worker的监控在spark集群运行时即可监控,Driver和Excutor的监控需要 ...
- Linux CPU监控指标
Linux CPU监控指标 Linux提供了非常丰富的命令可以进行CPU相关数据进行监控,例如:top.vmstat等命令.top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执 ...
- 【转载一】Grafana –美观、强大的可视化监控指标展示工具
在之前的InfluxDB系列教程 中,我们给大家介绍了当下流行的一款时序数据库--InfluxDB. 接下来给大家带来一款强大的,与InfluxDB搭配使用的前端指标项展示项目--Grafana. G ...
- 大数据技术之_09_Flume学习_Flume概述+Flume快速入门+Flume企业开发案例+Flume监控之Ganglia+Flume高级之自定义MySQLSource+Flume企业真实面试题(重点)
第1章 Flume概述1.1 Flume定义1.2 Flume组成架构1.2.1 Agent1.2.2 Source1.2.3 Channel1.2.4 Sink1.2.5 Event1.3 Flum ...
- MySQL 监控指标
为了排查问题,对数据库的监控是必不可少的,在此介绍下 MySQL 中的常用监控指标. 简介 MySQL 有多个分支版本,常见的有 MySQL.Percona.MariaDB,各个版本所对应的监控项也会 ...
随机推荐
- 浅谈Python设计模式 - 外观模式
声明:本系列文章主要参考<精通Python设计模式>一书,并且参考一些资料,结合自己的一些看法来总结而来. 外观模式 外观模式的核心在于将复杂的内部实现包装起来,只向外界提供简单的调用接口 ...
- Centos 7 kubernetes集群搭建
一.环境准备 Kubernetes支持在物理服务器或虚拟机中运行,本次使用虚拟机准备测试环境,硬件配置信息如表所示: IP地址 节点角色 CPU Memory Hostname 磁盘 192.168. ...
- JQuery-zTree.js使用范例
JQuery-zTree.js使用范例 实现Tree树的插件很多,比如常见的UI:Layui.ElementUI.iView ... .这里我们介绍一个小巧的构建Tree树的插件 zTree.js z ...
- POJ 2762Going from u to v or from v to u?(强联通 + 缩点 + 拓扑排序)
[题意]: 有N个房间,M条有向边,问能否毫无顾虑的随机选两个点x, y,使从①x到达y,或者,②从y到达x,一定至少有一条成立.注意是或者,不是且. [思路]: 先考虑,x->y或者y-> ...
- 洛谷P1084 疫情控制(贪心+倍增)
这个题以前写过一遍,现在再来写,感觉以前感觉特别不好写的细节现在好些多了,还是有进步吧. 这个题的核心思想就是贪心+二分.因为要求最小时间,直接来求问题将会变得十分麻烦,但是如果转换为二分答案来判断可 ...
- Android Studio在代码重构中的妙用
代码重构几乎是每个程序员在软件开发中必须要不断去做的事情,以此来不断提高代码的质量.Android Stido(以下简称AS)以其强大的功能,成为当下Android开发工程师最受欢迎的开发工具,也是A ...
- ffmpeg的源码调试
转自:windows下使用Visual Studio编译可以调试的FFmpeg 2017年01月05日 13:33:39 阅读数:3654 因本人主要在windows环境下开发,Linux下的gpb调 ...
- ModelMetadataProviders 获取类型元数据
var aa = ModelMetadataProviders.Current.GetMetadataForType(null, typeof(LogModel)).Properties;
- Spring Boot 2.x(十六):玩转vue文件上传
为什么使用Vue-Simple-Uploader 最近用到了Vue + Spring Boot来完成文件上传的操作,踩了一些坑,对比了一些Vue的组件,发现了一个很好用的组件--Vue-Simple- ...
- bind的模拟实现
bind 一句话介绍 bind: bind() 方法会创建一个新函数.当这个新函数被调用时,bind() 的第一个参数将作为它运行时的 this,之后的一序列参数将会在传递的实参前传入作为它的参数.( ...