257장. OpenTracing Component
Camel 2.19부터 사용 가능
Camel 2.21부터 OpenTracing Java API 버전 0.31 이상과 호환되는 OpenTracing 불만 추적기를 사용해야 합니다.
camel-opentracing 구성 요소는 OpenTracing 을 사용하여 들어오고 나가는 Camel 메시지를 추적 및 타이밍하는 데 사용됩니다.
Camel로 전송되는 수신 및 발신 메시지의 경우 이벤트(spans)가 캡처됩니다.
지원되는 추적기 목록은 OpenTracing 웹 사이트를 참조하십시오.
257.1. 설정
OpenTracing 추적기의 구성 속성은 다음과 같습니다.
옵션 | Default | 설명 |
---|---|---|
excludePatterns | 패턴과 일치하는 Camel 메시지의 추적을 비활성화하는 exclude 패턴을 설정합니다. 콘텐츠는 키가 패턴인 Set<String>입니다. 이 패턴은 인터셉의 규칙을 사용합니다. | |
인코딩 | false | 헤더 키를 인코딩(연결기별)해야 하는지 여부를 설정합니다. 값은 부울입니다. 대시는 JMS 속성 키에 대해 인스턴스를 인코딩해야 합니다. |
Camel 애플리케이션에 분산 추적 기능을 제공하도록 OpenTracing 추적기를 구성할 수 있는 세 가지 방법이 있습니다.
257.1.1. 명시적
선택한 OpenTracing compliant Tracer와 관련된 특정 종속성과 함께 POM에 camel-opentracing
구성 요소를 포함합니다.
OpenTracing 지원을 명시적으로 구성하려면 OpenTracingTracer
를 인스턴스화하고 camel 컨텍스트를 초기화합니다. 선택적으로 추적기
를 지정하거나 레지스트리
또는 ServiceLoader
를 사용하여 암시적으로 검색할 수 있습니다.
OpenTracingTracer ottracer = new OpenTracingTracer(); // By default it uses a Noop Tracer, but you can override it with a specific OpenTracing implementation. ottracer.setTracer(...); // And then initialize the context ottracer.init(camelContext);
XML에서 OpenTracingTracer를 사용하려면 OpenTracing Tracer를 OpenTracing 추적기 빈을 정의하는 것입니다. Camel에서 자동으로 검색 및 사용합니다.
<bean id="tracer" class="..."/> <bean id="ottracer" class="org.apache.camel.opentracing.OpenTracingTracer"> <property name="tracer" ref="tracer"/> </bean>