2017-12-05 17 views
0

링크 Istio/Distributed tracing을 따라 가면 zipkin으로 작업하는 추적 기능을 사용할 수 있습니다.분산 추적을 위해 zipkin과 함께 istio를 사용할 때 x-request-id를 다시 보낼 수 있습니까?

현재 클라이언트/호출자가 x-request-id (id가 전송되지 않은 경우 zipkin이 생성)에 대해 알기 위해 은 요청의 일부로이를 전송해야합니다.

이렇게하면 요청을 추적 할 수 있습니다. 모든 것이 잘 작동합니다.

그러나 클라이언트가 제약 조건/중복 문제를 피하기 위해 x-request-id를 보내는 것이 좋지 않을지 모릅니다.

istio 레벨에서 응답 헤더를 수정하고 x-request-id를 돌려 줄 수 있다면 좋을 것입니다.

현재 istio와 같은 기능을 찾을 수 없습니다. 이를 달성 할 수있는 방법이 있으면 알려주십시오. 그래서 일반적으로,

추적 수단을 원래 요청의 일부이며 모든 범위 또는 노드를 식별 :

답변

0

는 내가 완전히 질문을 이해하지만 istio이 추적에 대한 작동 방법에 대한 약간의 정교한 수 있는지 모르겠어요 각각의 istio-proxy가 그 정보를 캡쳐하여 정보를 istio-mixer로 전송할 수 있도록 Zipkin 또는 Jaeger를 사용하여이를 시각화 할 수 있도록 응용 프로그램은 istio-ingress에 의해 생성되고 응용 프로그램은 propagate it이어야합니다.

Istio는 헤더를 복사하지 않으면 원래 요청에 대한 아웃 콜을 응용 프로그램에서 만들 때이를 알 수 없습니다.

도움이 되니?

+0

저는 istio에 의해 노출 된 서비스를 호출하는 사람의 관점에서 더 많은 것을보고 있습니다. 클라이언트 또는 호출자가 추적 기능을 사용하여 요청 플로우를 점검 할 수 있으면 좋을 것입니다. –

+0

아, 그래서 당신은 입구 요청의 결과로 외부에서 traceid를 노출하는 것을 의미합니다. 아마 그 옵션이 될 수있을 것 같아요. (정보가 내부에 있어야한다는 것은 대부분의 사람들에게 기본이 아닐 수도 있습니다.) 나는 시도하지 않았지만 어쩌면 당신은 그 외부 서비스에서 헤더를 먼저 생성 할 수 있었을 것입니다. (외부 시스템으로 돌아 가지 않고 미리 설정하여 목표를 달성하십시오) –