gpt4 book ai didi

java - 使用 Java API 定期获取 Kafka Producer 指标

转载 作者:行者123 更新时间:2023-11-30 01:51:04 25 4
gpt4 key购买 nike

我知道 Kafka API 中可用于生产者指标的 metric() 方法。实际上,我正在尝试通过以下方式定期获取 10k 记录、100k 等记录的指标:

enter image description here

我正在 Intellij IDE 中运行我的生成器,它将生成大约一百万条记录。我尝试通过以下方式打印指标:

for (Entry<MetricName, ? extends Metric> entry : producer.metrics().entrySet()) {
System.out.println(entry.getKey().name() + " : " + entry.getValue().metricValue());
}

但是这个方法返回的是生产者的整体指标。

如何使用 metrics() 获取特定间隔的request-raterequest-total 生产者指标?

最佳答案

您必须按照所需的时间间隔明确检查这些指标的值。

类似(简化逻辑):

Producer<String, String> producer = new KafkaProducer<>(configs);

// Find the metrics you are interested in
Metric requestTotalMetric = null;
for (Entry<MetricName, ? extends Metric> entry : producer.metrics().entrySet()) {
if ("request-total".equals(entry.getKey().name())) {
requestTotalMetric = entry.getValue();
}
}

for (int i = 0; i < 1000000000; i++) {
producer.send(new ProducerRecord<String, String>("topic", "record"));
// Get metric value at desired interval
if (i % 100000 == 0) {
System.out.println(i + " : " + requestTotalMetric.metricValue());
}
}

关于java - 使用 Java API 定期获取 Kafka Producer 指标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56035219/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com