2017-01-24 3 views
0

Springboot 앱으로 전파.Zipkin Brave v4 - 요청 범위를

Brave v4를 사용하고 있으며 향후에 더 이상 지원되지 않을 용감한 코어 모듈을 사용하지 않으려 고합니다. Brave v3에서는 현재 스팬을 스레드 내에서 유지하고 Brave 클래스에서 처리 할 때 쉽게 전달할 수있었습니다.

async-http-client 클라이언트를 사용하고 있으며 머리글에서주고받는 요청 및 응답 필터를 만들고 시작 및 제출 범위를 작성했습니다. 이것은 모두 예상대로 작동합니다. async-http-client 풀은 시작할 때 리스너가 연결된 상태로 연결되어 있습니다. 리스너는 TracerImpl을받습니다. TracingImpl은 Tracer 클래스의 래퍼이므로 수신기가 제출하는 등을 수행 할 수 있습니다. 스스로)

예를 들어, 요청이 컨트롤러에 들어 오면 요청에서 Span을 추출한 다음 async-http-client를 사용하여 다른 요청을 만들려합니다. 들어오고있다. 나는 현재 나의 컨트롤러에 async-http-client 객체가있는 Span 객체를 어떻게 가져야하는지 확신 할 수 없다. 아이디어 나 도움을 주시면 대단히 감사하겠습니다.

감사

순간
+0

내가 추가해야하는 async-http-client 요청은 몇 레벨 정도 될 수 있으며 레이어를 통해 스팬 개체를 전달하지 않는 것이 좋습니다. – TimS

답변

0

는 "스레드 바인더"API에 대한 대체가 없습니다. 앞으로 몇 달 안에있을 것입니다. 이것은 실제로 기존 계측을 혁신하기 위해 필요합니다.

그 전까지는 TracerAdapter를 통해 스레드 바인더를 다시 사용하거나 다른 프로세스 내 전파 라이브러리를 사용할 수 있습니다. 다음 링크는 작업 예제를 포함하고 있습니다. https://github.com/openzipkin/brave/tree/master/brave#upgrading-from-brave-3