위키득계정 ↗
기술

Zipkin

Zipkin기술
주요 대상
분산 요청의 실행 기록
기록 단위
Span
수집 경로
Reporter에서 Collector로 전송
조회 방식
질의 API와 웹 화면
Zipkin은 여러 서비스에서 발생한 실행 기록을 모아 요청의 흐름과 소요 시간을 살펴보는 분산 추적 시스템이다. 응용에서 만든 Span을 수집하고 저장하며 질의 API와 웹 화면으로 추적 내용을 제공한다.

응용에서 기록하는 실행 정보

계측된 라이브러리는 작업의 시간과 메타데이터를 Span으로 남긴다. 다른 서비스를 호출할 때는 추적 식별 정보를 함께 전달해 서로 다른 위치에서 만들어진 기록이 같은 요청에 속한다는 것을 알 수 있게 한다.

식별자 전달과 기록 전송

호출에 실어 보내는 식별 정보와 완성된 실행 기록을 보내는 경로는 구분된다. Reporter는 Span을 비동기로 수집기에 보내므로 기록을 보내는 처리를 실제 서비스 호출과 분리할 수 있다.

저장에서 조회까지

Collector는 받은 추적 자료를 검증하고 저장과 색인에 연결한다. 질의 서비스는 저장한 추적을 찾는 API를 제공하고 웹 화면은 서비스와 시간 등의 조건으로 실행 흐름을 살펴보도록 구성된다.

관련 문서

Jaeger 분산 추적 / Dapper 분산 추적 / OpenTracing / OpenTelemetry / W3C Trace Context / API