Kafka 0.8.1.1(kafka_2.8.0-0.8.1.1.tgz)如何使用jmxtrans监控Kafka经纪人?
我正在使用jmxtrans对Kafka实例(在docker中运行)执行JMX监视。不幸的是,kafka指标没有被返回。
我已经尝试了一些事情来调试这个,并且知道kafka运行正常(我可以成功生成/使用消息)得出结论,jmxtrans确实返回了JMX度量(例如,java.lang:type = Memory,attribute = HeapMemoryUsage返回正确的数据),所以一般的kafka和JMX功能似乎正在工作。另外,当我使用jconsole时,我可以访问这些指标 - 这些指标似乎可以在所有相关领域的数据中捕获。
当我尝试使用以下配置的jmxtrans时,不幸的是,我没有收到任何信息(实际上根本没有数据)。相信度量应该基于卡夫卡文档被捕获(“kafka.server:类型= BrokerTopicMetrics”,属性=“MessagesInPerSec”)
以下是jmxtrans配置,我用:
{
"servers" : [ {
"port" : "9999",
"host" : "10.0.1.201",
"queries" : [ {
"outputWriters" : [ {
"@class" : "com.googlecode.jmxtrans.model.output.StdOutWriter",
"settings" : {
}
} ],
"obj" : "kafka.server:type=BrokerTopicMetrics",
"attr" : [ "MessagesInPerSec" ]
} ],
"numQueryThreads" : 2
} ]
}
我不确定数据未返回的原因。也许我设置了一个无效的jmxtrans配置,或者我正在指定不正确的度量。
任何帮助表示赞赏。
您使用的是什么卡夫卡版本?我使用的是从源代码构建的最新版本,JMX确实发生了一些变化。你说得对,使用''是个解决方案,但升级之后就不会。 –
我将很快升级到下一个版本 - 您是否知道它何时被修复(即不需要引号)? –
不完全是,但我正在使用从源代码构建的最新版本,所以它肯定会在下一个版本中使用。 –