第17章 分散トレースの設定
分散トレースを使用すると、分散システムのアプリケーション間におけるトランザクションの進捗を追跡できます。マイクロサービスのアーキテクチャーでは、トレースがサービス間のトランザクションの進捗を追跡します。トレースデータは、アプリケーションのパフォーマンスを監視し、ターゲットシステムおよびエンドユーザーアプリケーションの問題を調べるのに有用です。
AMQ Streams では、トレースによってメッセージのエンドツーエンドの追跡が容易になります。これは、ソースシステムから Kafka、さらに Kafka からターゲットシステムおよびアプリケーションへのメッセージの追跡です。これは、JMX メトリクス で表示できるメトリクスやコンポーネントロガーを補います。
トレースのサポートは、以下の Kafka コンポーネントに組み込まれています。
- Kafka Connect
- MirrorMaker
- MirrorMaker 2
- AMQ Streams Kafka Bridge
トレースは Kafka ブローカーではサポートされません。
コンポーネントのプロパティーファイルにトレース設定を追加します。
トレースを有効にするには、環境変数を設定し、トレースシステムのライブラリーを Kafka クラスパスに追加します。Jaeger トレースの場合は、次のシステムのトレースアーティファクトを追加できます。
- Jaeger Exporter を使用した OpenTelemetry
- Jaeger による OpenTracing
OpenTracing のサポートは非推奨となりました。Jaeger クライアントは廃止され、OpenTracing プロジェクトはアーカイブされました。そのため、今後の Kafka バージョンのサポートを保証できません。
Kafka プロデューサー、コンシューマー、および Kafka Streams API アプリケーションでトレースを有効にするには、アプリケーションコードを インストルメント化 します。インストルメント化されると、クライアントはメッセージのトレースデータを生成します (メッセージの作成時やログへのオフセットの書き込み時など)。
AMQ Streams 以外のアプリケーションおよびシステムにトレースを設定する方法については、このコンテンツの対象外となります。
17.1. 手順の概要 リンクのコピーリンクがクリップボードにコピーされました!
AMQ Streams のトレースを設定するには、以下の手順を順番に行います。
MirrorMaker、MirrorMaker 2、および Kafka Connect のトレースをセットアップします。
クライアントのトレースを設定します。
トレーサーでクライアントをインストルメント化します。
Kafka Bridge のトレースを有効にする方法は、AMQ Streams Kafka Bridge の使用 を参照してください。