首页 > 解决方案 > 使用 Kafka Prod 指标,以便在一个时间窗口内计算指标

问题描述

我希望使用 Kafka Producer 指标:

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

获取无法发布的记录并在 apache kafka 文档中找到这两个有用的指标:

record-error-rate 导致错误的平均每秒记录发送数

record-error-total 导致错误的记录发送总数

  1. 但我希望这些值在 x 单位时间后重置这些属性。我怎样才能做到这一点?

  2. 基本上我正在寻找我的发布者的健康状况,如果record-error-total > threshold,我们会说它不健康......但我们需要重置record-error-total它,否则即使一旦超过阈值,它也会始终显示不健康。

  3. record-error-rate- 这是否从应用程序开始(记录发送导致错误/时间)开始,或者是否有任何内部维护的时间窗口?

标签: javaapache-kafkakafka-producer-api

解决方案


推荐阅读