373.7. Zipkin コンポーネント

Camel 2.18 から利用可能

camel-zipkin コンポーネントは、zipkin を使用して入力および出力 Camel メッセージのトレースとタイミングをとるために使用されます。

イベント (スパン) は、Camel との間で送受信される入力および出力メッセージに対してキャプチャーされます。

注記

camel-zipkin は Camel 2.22.0 でリファクタリングされ、zipkin-scribe を使用せずにデフォルトの http トランスポートを使用する予定です。この作業により、下位互換性が失われる可能性があります。

つまり、どの Camel エンドポイントを zipkin サービス名にマップするかを設定する必要があります。

マッピングは、次を使用して設定できます。

  • route id - Camel ルート ID
  • endpoint url - Camel エンドポイント URL

どちらの種類でも、Intercept のルールを使用して、ワイルドカードと正規表現を使用して一致させることができます。

すべての Camel メッセージに一致させるには、パターンで * を使用し、それを同じサービス名に設定します。

マッピングが設定されていない場合、Camel はフォールバックし、エンドポイント URI をサービス名として使用します。 
ただし、名前に Camel エンドポイント URI の代わりに人間が読める名前を使用できるように、サービスマッピングを設定することをお勧めします。

Camel は、明示的に設定されていないスパンレポーターを自動設定し、Zipkin コレクターへのホスト名とポートが環境変数として設定されている場合

  • ZIPKIN_COLLECTOR_HTTP_SERVICE_HOST - The http hostname
  • ZIPKIN_COLLECTOR_HTTP_SERVICE_PORT - ポート番号

または

  • ZIPKIN_COLLECTOR_THRIFT_SERVICE_HOST - The Scribe (Thrift RPC) hostname
  • ZIPKIN_COLLECTOR_THRIFT_SERVICE_PORT - ポート番号

これにより、サービス設定が環境変数として提供される Linux コンテナーでプラットフォームがアプリケーションを実行できるコンテナープラットフォームで camel-zipkin を簡単に使用できます。