Red Hat Training

A Red Hat training course is available for Red Hat Fuse

356.3. マッピングルール

サーバーのサービス名のマッピングは、次のルールを使用して発生します

  1. from エンドポイントのエンドポイント uri に一致する除外パターンはありますか?はいの場合はスキップします。
  2. from エンドポイントのエンドポイント uri と一致する serviceServiceMapping に一致がありますか?はいの場合は、見つかったサービス名を使用します。
  3. 現在のルートのルート ID と一致する serviceServiceMapping に一致がありますか?はいの場合は、見つかったサービス名を使用します。
  4. 交換が開始された元のルート ID と一致する serviceServiceMapping に一致がありますか?はいの場合は、見つかったサービス名を使用します。
  5. サービス名が見つかりませんでした。エクスチェンジは zipkin によって追跡されません。

クライアントのサービス名のマッピングは、次のルールを使用して発生します

  1. from エンドポイントのエンドポイント uri に一致する除外パターンはありますか?はいの場合はスキップします。
  2. メッセージの送信先のエンドポイントのエンドポイント uri と一致する clientServiceMapping に一致がありますか?はいの場合は、見つかったサービス名を使用します。
  3. 現在のルートのルート ID と一致する clientServiceMapping に一致がありますか?はいの場合は、見つかったサービス名を使用します。
  4. エクスチェンジが開始された元のルート ID と一致する clientServiceMapping に一致がありますか?はいの場合は、見つかったサービス名を使用します。
  5. サービス名が見つかりませんでした。エクスチェンジは zipkin によって追跡されません。

356.3.1. クライアントまたはサーバーのマッピングがない

クライアントまたはサーバーサービスマッピングの設定がない場合、CamelZipkin はフォールバックモードで実行され、エンドポイント uris をサービス名として使用します。

上記の例では、次のコードを自分で追加したかのようにサービス名が定義されることを意味します。

zipkin.addServerServiceMapping("activemq:queue:inbox", "activemq:queue:inbox");
zipkin.addClientServiceMapping("http:someserver/somepath", "http:someserver/somepath");

これは推奨される方法ではありませんが、サービス名のマッピングを行わなくてもすぐに起動して実行できます。ただし、インフラストラクチャー全体に複数のシステムがある場合は、camel エンドポイント uris を使用する代わりに、人間が判読できるサービス名の使用を検討する必要があります。