我正在使用Intellij IDE在本地计算机上运行Kafka生产者,该生产者将产生一百万条记录。这样做时,我想通过以下方式捕获生产者指标:
我知道kafka的JMX端口,我确实尝试将Kafka JMX端口设置为9999。 但是我不确定是否可以通过上述期望的方式使用JConsole或JVisualVM获得指标。
任何人都可以提出有关如何实现此目标的任何想法吗?
答案 0 :(得分:3)
除了JMX,Kafka官方客户端还通过Java API公开了其指标,请参见metrics()
方法来检索所有指标。
例如,要打印所有度量标准的名称和值:
for (Entry<MetricName, ? extends Metric> entry : producer.metrics().entrySet()) {
System.out.println(entry.getKey().name() + " : " + entry.getValue().metricValue());
}
在所有指标中,您可能对outgoing-byte-rate
,request-total
和request-rate
感兴趣。