【发布时间】:2019-05-08 07:03:20
【问题描述】:
我知道 Kafka API 中可用于生产者指标的 metric() 方法。我实际上正在尝试以以下方式定期获取 10k 记录、100k 等的指标:
我正在使用 Intellij IDE 运行我的生产者,它将产生大约一百万条记录。我尝试按以下方式打印指标:
for (Entry<MetricName, ? extends Metric> entry : producer.metrics().entrySet()) {
System.out.println(entry.getKey().name() + " : " + entry.getValue().metricValue());
}
但是这个方法返回的是生产者的整体指标。
如何使用metrics() 获取特定于间隔的request-rate 和request-total 生产者指标?
【问题讨论】:
-
看来你不能通过
metrics来做。可能使用JmxTool检索百分位数,例如 FiveteenMinuteRate` 等。这是您想要的吗? -
@amethystic 不,实际上我想要发送 10k 条记录时的生产者指标,再次发送 100k 条记录时等等。我知道
metrics()可用于获取生产者指标,但我不确定如何在特定时间间隔调用它。
标签: java apache-kafka jmx kafka-producer-api