16.5. MirrorMaker 2 のトレースを有効にする
MirrorMaker 2 プロパティーファイルで Interceptor プロパティーを定義することにより、MirrorMaker 2 の分散トレースを有効にします。メッセージは Kafka クラスター間でトレースされます。トレースデータは、MirrorMaker 2 コンポーネントに出入りするメッセージを記録します。
OpenTelemetry を使用したトレースを有効にできます。
手順
-
トレースアーティファクトを
opt/kafka/libs
ディレクトリーに追加します。 opt/kafka/config/connect-mirror-maker.properties
ファイルでプロデューサーとコンシューマーのトレースを設定します。次のトレースインターセプタープロパティーを設定ファイルに追加します。
OpenTelemetry のプロパティー
header.converter=org.apache.kafka.connect.converters.ByteArrayConverter producer.interceptor.classes=io.opentelemetry.instrumentation.kafkaclients.TracingProducerInterceptor consumer.interceptor.classes=io.opentelemetry.instrumentation.kafkaclients.TracingConsumerInterceptor
ByteArrayConverter
は、Kafka Connect が、メッセージヘッダー (トレース ID を含む) を base64 エンコーディングに変換しないようにします。これにより、メッセージがソースクラスターとターゲットクラスターの両方で同じになります。トレースを有効にすると、Kafka MirrorMaker 2 スクリプトを実行するときにトレースを初期化します。
- 設定ファイルを作成します。
- トレースの 環境変数 を設定します。
プロデューサーおよびコンシューマー設定ファイルをパラメーターとして使用して MirrorMaker 2 を起動します。
su - kafka /opt/kafka/bin/connect-mirror-maker.sh \ /opt/kafka/config/connect-mirror-maker.properties
MirrorMaker 2 の内部コンシューマーとプロデューサのトレースが有効になりました。