383.11. 매핑 규칙

서버의 서비스 이름 매핑은 다음 규칙을 사용하여 수행합니다.

  1. from 끝점의 끝점 uri와 일치하는 제외 패턴이 있습니까? 그렇지 않으면 건너 뛰십시오.
  2. from 끝점의 끝점 uri와 일치하는 serviceServiceMapping에 일치하는 항목이 있습니까? 해당하는 경우 확인된 서비스 이름을 사용합니다.
  3. serviceServiceMapping에 현재 경로의 경로 ID와 일치하는 일치 항목이 있습니까? 해당하는 경우 확인된 서비스 이름을 사용합니다.
  4. 교환이 시작된 원래 경로 ID와 일치하는 serviceServiceMapping에 일치하는 항목이 있습니까? 해당하는 경우 확인된 서비스 이름을 사용합니다.
  5. 서비스 이름을 찾을 수 없음, 교환은 zipkin에 의해 추적되지 않음

클라이언트의 서비스 이름 매핑은 다음 규칙을 사용하여 수행합니다.

  1. from 끝점의 끝점 uri와 일치하는 제외 패턴이 있습니까? 그렇지 않으면 건너 뛰십시오.
  2. 메시지가 전송 중인 끝점의 끝점 uri와 일치하는 clientServiceMapping에 일치합니까? 해당하는 경우 확인된 서비스 이름을 사용합니다.
  3. clientServiceMapping에 현재 경로의 경로 ID와 일치하는 일치 항목이 있습니까? 해당하는 경우 확인된 서비스 이름을 사용합니다.
  4. 교환이 시작된 원래 경로 ID와 일치하는 clientServiceMapping에 일치하는 항목이 있습니까? 해당하는 경우 확인된 서비스 이름을 사용합니다.
  5. 서비스 이름을 찾을 수 없음, 교환은 zipkin에 의해 추적되지 않음

383.11.1. 클라이언트 또는 서버 매핑 없음

클라이언트 또는 서버 서비스 매핑 구성이 없는 경우 CamelZipkin은 대체 모드로 실행되고 서비스 이름으로 엔드포인트 uris를 사용합니다.

위의 예에서는 다음 코드를 직접 추가하는 것처럼 서비스 이름이 정의됩니다.

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

이 방법은 권장되는 방법은 아니지만 서비스 이름 매핑을 수행하지 않고도 빠르게 가동 및 실행됩니다. 그러나 인프라에 여러 시스템이 있는 경우 사용자가 읽을 수 있는 서비스 이름을 사람이 읽을 수 있는 서비스 이름을 사용해야 합니다. 이 이름은 camel 엔드포인트 uris를 사용하는 대신 매핑됩니다.