2.7. Eclipse MicroProfile OpenTracing
2.7.1. Eclipse MicroProfile OpenTracing
サービス境界全体でリクエストをトレースする機能は、ライフサイクル中にリクエストが複数のサービスを通過するマイクロサービス環境で特に重要となります。
Eclipse MicroProfile OpenTracing 仕様は、CDI-bean アプリケーション内の OpenTacing 対応の Tracer
オインターフェイスにアクセスするための、動作および API を定義します。Tracer
インターフェイスは JAX-RS アプリケーションを自動的にトレースします。
動作は、送受信リクエストに対してどのように Open Tracing Spans が自動的に作成されるかを指定します。API は、指定のエンドポイントのトレースをどのように明示的に無効または有効にするかを定義します。
その他のリソース
- Eclipse MicroProfile OpenTracing 仕様の詳細は、Eclipse MicroProfile OpenTracing ドキュメント を参照してください。
-
Tracer
インターフェイスの詳細は、Tracer
javadoc を参照してください。
2.7.2. EAP での Eclipse MicroProfile OpenTracing
microprofile-opentracing-smallrye
サブシステムを使用して、Jakarta EE アプリケーションを追跡する環境変数を指定できます。このサブシステムは SmallRye OpenTracing コンポーネントを使用して JBoss EAP の Eclipse MicroProfile OpenTracing 機能を提供します。
MicroProfile 1.3.0 は、アプリケーションのリクエストのトレースをサポートします。デフォルトの Jaeger Java Client トレーサーや、Jakarta EE で 一 般的に使用されるコンポーネントのインストルメンテーションライブラリーのセットを設定して、システムプロパティーまたは環境変数を設定できます。
JBoss EAP サーバーに自動的にデプロイされた各 WAR は、独自の Tracer
インスタンスを持ちます。EAR 内の各 WAR は個別の WAR として扱われ、各 WAR には独自の Tracer
インスタンスがあります。デフォルトでは、Jaeger Client と使用されるサービス名はデプロイメントの名前から派生し、通常これは WAR ファイル名になります。
microprofile-opentracing-smallrye
サブシステム内でシステムプロパティーまたは環境変数を設定して Jaeger Java Client を設定できます。
システムプロパティーおよび環境変数を使用した Jeager Client トレーサーの設定はテクノロジープレビューとして提供されます。Jeager Client トレーサーに関連するシステムプロパティーおよび環境変数は、今後のリリースで変更されて、相互互換性がなくなる可能性があります。
デフォルトでは、Jaeger Client for Java のプローブ的なサンプリングストラテジーは 0.001
に設定されています。つまり、サンプルされるのは、約 1000 トレースつき 1 つとなります。すべてのリクエストのサンプルを取るには、システムプロパティー JAEGER_SAMPLER_TYPE
を const
に設定し、JAEGER_SAMPLER_PARAM
を 1
に設定します。
関連情報
- SmallRye OpenTracing 機能の詳細は、SmallRye OpenTracing コンポーネント を参照してください。
- デフォルトのトレーサーの詳細は、Jaeger Java Client を参照してください。
-
Tracer
インターフェイスの詳細は、Tracer
javadoc を参照してください。 - デフォルトトレーサーをオーバーライドする方法と、CDI bean のトレース方法に関する詳細は、開発ガイドの Eclipse MicroProfile OpenTracing を使用したリクエストのトレース を参照してください。
- Jaeger Client の設定に関する詳細は、Jaeger ドキュメント を参照してください。
- 有効なシステムプロパティーの詳細は、Jaeger ドキュメントの Configuration via Environment を参照してください。