监控配置

​ kafka基本分为broker、producer、consumer三个子项,每一项的启动都需要用到 $KAFKA_HOME/bin/kafka-run-class.sh 脚本,在该脚本中,存在以下语句:

if ...
KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
fi
if ...
KAFKA_JMX_OPTS="$KAFKA_JMX_OPTS -Dcom.sun.management.jmxremote.port=$JMX_PORT "
fi

​ 在启动kafka的过程中,只要指定 JMX_PORT 的值,即可对broker、producer、consumer进行监控。目前有两种方法,

  • $KAFKA_HOME/bin/kafka-server-start.sh$KAFKA_HOME/bin/kafka-console-consumer.sh$KAFKA_HOME/bin/kafka-console-producer.sh 三个脚本中分别添加 $JMX_PORT=XXXX 语句,但是只适用于使用console方式对topic进行使用的情况。
  • 修改$KAFKA_HOME/bin/kafka-run-class.sh 脚本中的上述语句,使其端口随机变化,可以通过 ps -ef |grep kafka 命令来获取随机的端口号,来进行监控

指标项来源

以下端口均随机获得。

主机名 类别 端口号
192.168.20.10 broker 9183
192.168.20.10 producer 9108
192.168.20.10 consumer 9173

kafka监控项

OS监控项

objectName 指标项 说明
java.lang:type=OperatingSystem FreePhysicalMemorySize 空闲物理内存
java.lang:type=OperatingSystem SystemCpuLoad 系统CPU利用率
java.lang:type=OperatingSystem ProcessCpuLoad 进程CPU利用率
java.lang:type=GarbageCollector,
name=G1 Young Generation
CollectionCount GC次数

broker指标

objectName 指标项 说明
kafka.server:type=BrokerTopicMetrics,
name=BytesInPerSec
Count 每秒输入的流量
kafka.server:type=BrokerTopicMetrics,
name=BytesOutPerSec
Count 每秒输出的流量
kafka.server:type=BrokerTopicMetrics,
name=BytesRejectedPerSec
Count 每秒扔掉的流量
kafka.server:type=BrokerTopicMetrics,
name=MessagesInPerSec
Count 每秒的消息写入总量
kafka.server:type=BrokerTopicMetrics,
name=FailedFetchRequestsPerSec
Count 当前机器每秒fetch请求失败的数量
kafka.server:type=BrokerTopicMetrics,
name=FailedProduceRequestsPerSec
Count 当前机器每秒produce请求失败的数量
kafka.server:type=ReplicaManager,
name=PartitionCount
Value 该broker上的partition的数量
kafka.server:type=ReplicaManager,
name=LeaderCount
Value Leader的replica的数量
kafka.network:type=RequestMetrics,
name=TotalTimeMs,request=FetchConsumer
Count 一个请求FetchConsumer耗费的所有时间
kafka.network:type=RequestMetrics,
name=TotalTimeMs,request=FetchFollower
Count 一个请求FetchFollower耗费的所有时间
kafka.network:type=RequestMetrics,
name=TotalTimeMs,request=Produce
Count 一个请求Produce耗费的所有时间

producer以及topic指标

objectName 指标项 官网说明 译文说明
kafka.producer:type=producer-metrics,client-id=console-producer(client-id会变化) incoming-byte-rate The average number of incoming bytes received per second from all servers. producer每秒的平均写入流量
kafka.producer:type=producer-metrics,client-id=console-producer(client-id会变化) outgoing-byte-rate The average number of outgoing bytes sent per second to all servers. producer每秒的输出流量
kafka.producer:type=producer-metrics,client-id=console-producer(client-id会变化) request-rate The average number of requests sent per second to the broker. producer每秒发给broker的平均request次数
kafka.producer:type=producer-metrics,client-id=console-producer(client-id会变化) response-rate The average number of responses received per second from the broker. producer每秒发给broker的平均response次数
kafka.producer:type=producer-metrics,client-id=console-producer(client-id会变化) request-latency-avg The average time taken for a fetch request. 一个fetch请求的平均时间
kafka.producer:type=producer-topic-metrics,client-id=console-producer,topic=testjmx(client-id和topic名称会变化) record-send-rate The average number of records sent per second for a topic. 每秒从topic发送的平均记录数
kafka.producer:type=producer-topic-metrics,client-id=console-producer,topic=testjmx(client-id和topic名称会变化) record-retry-total The total number of retried record sends 重试发送的消息总数量
kafka.producer:type=producer-topic-metrics,client-id=console-producer,topic=testjmx(client-id和topic名称会变化) record-error-total The total number of record sends that resulted in errors 发送错误的消息总数量

consumer指标

objectName 指标项 官网说明 说明
kafka.consumer:type=consumer-fetch-manager-metrics,client-id=consumer-1(client-id会变化) records-lag-max Number of messages the consumer lags behind the producer by. Published by the consumer, not broker. 由consumer提交的消息消费lag
kafka.consumer:type=consumer-fetch-manager-metrics,client-id=consumer-1(client-id会变化) records-consumed-rate The average number of records consumed per second 每秒平均消费的消息数量

kafka监控指标项的更多相关文章

  1. Flume监控指标项

    配置监控 1.修改flume-env.sh export JAVA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmx ...

  2. hbase 监控指标项

    名词解释 JMX:Java Management Extensions,用于用于Java程序扩展监控和管理项 GC:Garbage Collection,垃圾收集,垃圾回收机制 指标项来源 主机名 u ...

  3. Hbase监控指标项

    名词解释 JMX:Java Management Extensions,用于用于Java程序扩展监控和管理项 GC:Garbage Collection,垃圾收集,垃圾回收机制 指标项来源 主机名 u ...

  4. Hadoop监控指标项

    配置 修改$HADOOP_HOME/etc/hadoop/hadoop-env.sh # 在配置namenode和datanode时都会有用到JMX_OPTS的代码,是为了减少重复提取出的公共代码 e ...

  5. 【转载】apache kafka系列之-监控指标

    原文地址:http://blog.csdn.net/lizhitao/article/details/24581907 1.监控目标 1.当系统可能或处于亚健康状态时及时提醒,预防故障发生 2.报警提 ...

  6. apache kafka系列之-监控指标

    apache kafka中国社区QQ群:162272557 1.监控目标 1.当系统可能或处于亚健康状态时及时提醒,预防故障发生 2.报警提示 a.短信方式 b.邮件 2.监控内容 2.1 机器监控 ...

  7. 关于kafka生产者相关监控指标的理解(未解决)

    关于生产者相关的监控指标含义的理解,希望大神帮忙进行确定下.     这边找了官网,看了网上各样的资料,但都无法帮我理解监控项目相关含义.     相关的监控项目是从jconsole获取的,并接入到了 ...

  8. Spark指标项监控

    监控配置 spark的监控主要分为Master.Worker.driver.executor监控.Master和Worker的监控在spark集群运行时即可监控,Driver和Excutor的监控需要 ...

  9. 【转】apache kafka监控系列-KafkaOffsetMonitor

    apache kafka监控系列-KafkaOffsetMonitor 时间 2014-05-27 18:15:01  CSDN博客 原文  http://blog.csdn.net/lizhitao ...

随机推荐

  1. jmeter---导出文件接口测试

    在http请求下添加后置处理器--BeanShell PostProcessor,保存文件到本地 运行脚本,查看本地文件.

  2. nohup重定向到其它的日志文件

    如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件: nohup command > myout.file 2 ...

  3. P3488 [POI2009]LYZ-Ice Skates

    传送门 这一题基础是二分图匹配,并且要知道一个 $Hall$ 定理:对于二分图能完全匹配的充要条件是,设点数少的那边为左边,点数为 $n$,对于 $k \in [1,n]$ ,左边任意 $k$ 个点, ...

  4. Two strings CodeForces - 762C (字符串,双指针)

    大意: 给定字符串$a$,$b$, $b$可以任选一段连续的区间删除, 要求最后$b$是$a$的子序列, 求最少删除区间长度. 删除一段连续区间, 那么剩余的一定是一段前缀和后缀. 判断是否是子序列可 ...

  5. ListVie的用法

    1.在布局中放入一个listView <ListView android:id="@+id/list_view" android:layout_width="mat ...

  6. Git复习(六)之标签管理

    标签管理 发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本.将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来.所以,标签也是版本库 ...

  7. wpf ActualWidth为0解决方法

    LocalNewsControl() { var descriptor = DependencyPropertyDescriptor.FromProperty(ActualWidthProperty, ...

  8. MySQL 必备工具使用的6个锦囊妙计!

    这款工具是 MySQL 一个重要分支 percona 的,名称叫做 percona-toolkit(一把锋利的瑞士军刀),它呢是一组命令的集合.今儿给大家介绍几个我们在生产环境中最长用到的. 工具包的 ...

  9. 两种表复制语句(SQL)

    select into select语句和select into from语句 1.INSERT INTO SELECT语句 语句形式为:Insert into Table2(field1,field ...

  10. string 驻留机制

    string 驻留机制   string s1 = "abc"; string s2 = "ab"; string s3 = s2 + "c" ...