接続ステータスに Kafka メトリクスを使用します

データ クライアント ライブラリには、 Kafka の消費者メトリクスへのプログラムによるアクセス権を付与する機能があります。このメトリクスを使用して、接続ステータスを評価できます。

使用量

基盤となる Kafka の消費者メトリクスには、SubscriptionControl経由でアクセスできます (直接取得することも、Subscriptionインスタンスを介して取得することもできます ) 。

Scala
Java
// Create QueryApi
val queryApi = DataClient().queryApi(catalogHrn)

// Define Kafka consumer settings assigning an id for the consumer (if no id is specified, a random UUID is assigned)
val consumerSettings =
  ConsumerSettings(groupName = "test-consumer", consumerId = "consumer-id")

// Subscribe to a layer
val subscription: Future[Subscription] = queryApi.subscribe("stream-layer", consumerSettings)

// Retrieve Kafka metrics
val kafkaMetrics: Future[Map[String, String]] =
  subscription.flatMap(s => s.subscriptionControl.getKafkaMetrics())
// Create QueryApi
QueryApi queryApi = DataClient.get(myActorSystem).queryApi(catalogHrn);

// Define Kafka consumer settings assigning an id for the consumer (if no id is specified, a
// random UUID is assigned)
ConsumerSettings consumerSettings =
    new ConsumerSettings.Builder()
        .withGroupName("test-consumer")
        .withConsumerId("consumer-id")
        .build();

// Subscribe to a layer
CompletionStage<Subscription> subscriptionFuture =
    queryApi.subscribe("stream-layer", consumerSettings);

// Retrieve Kafka metrics
subscriptionFuture.thenApply(
    subscription -> {
      scala.collection.immutable.List<String>
          stringList = // import scala.collection.JavaConverters;
          JavaConverters.asScalaBufferConverter(new ArrayList<String>()).asScala().toList();
      return subscription.getSubscriptionControl().getKafkaMetrics(stringList);
    });

使用可能なすべてのメトリックを取得する代わりに、渡されたリストに各メトリック名を追加することで、特定のサブセットのみを要求できます getKafkaMetrics (次を参照)。 Scala API リファレンス または Java API リファレンス

接続ステータス

Kafka のすべてのメトリクスの概要については、 Apache の公式ドキュメントを参照してください。

コンシューマの接続ステータスを評価するために、次のグローバル接続メトリックを使用できます。

メトリック名 説明
connection-count アクティブな接続の現在の数。
接続作成レート ウィンドウで 1 秒あたりに新しい接続が確立されました。
connection-close-rate ウィンドウで閉じられた合計接続数。
IO 比率 I/O スレッドが I/O の実行に費やした時間の割合
io-time-ns-avg 選択したコールあたりの I/O の平均時間(ナノ秒単位)。
IO-wait-ratio ( IO 待機率) I/O スレッドが待機していた時間の割合。
io-wait-time-ns-avg I/O スレッドが、読み取りまたは書き込みの準備が完了したソケットを待機するのに費やした平均時間(ナノ秒単位)。
select-rate 1 秒あたりに新しい I/O が実行されるかどうかを I/O レイヤーが確認した回数。

上記のメトリクスには、次の MBean 名が含ま kafka.consumer:type=consumer-metrics,client-id=([-.w]+)れています。

アプリケーションで Flink を Kafka と併用する場合、 Prometheus reporator を介してエクスポートされた Kafka のプロデューサーおよび消費者メトリクスにアクセスし、それらを使用して Grafana でダッシュボードを作成できます。 リンクをクリックすると、追加情報を参照できます。 Flink メトリクス.x

Flink で Kafka メトリクスのレポートを有効にするに は、here.platform.data-client.enable-flink-kafka-metrics設定の設定値をtrueに設定する必要があります ( 「設定」を参照 ) 。

」に一致する結果は 件です

    」に一致する結果はありません