Page 25 -
P. 25
11.1.2 스프링 클라우드 슬루스의 추적 분석
모든 것이 정상적으로 설정되면 이제 서비스 애플리케이션 코드에서 출력되는 모든 로그 문에 스
프링 클라우드 슬루스의 추적(trace) 정보가 포함된다. 예를 들어 그림 11-1은 다음 조직 서비스
엔드포인트에 HTTP GET 호출의 출력 로그를 보여 준다.
http://localhost:8072/organization/v1/organization/e839ee96-28de-4f67-bb79-870ca89743a0
그림 11-1 스프링 클라우드 슬루스는 추적 정보를 조직 서비스에서 출력되는 모든 로그 항목에 추가한다. 이 데이터는 사용자 요청
에 대한 서비스 호출을 연결하는 데 효과가 있다
झಃ *% TQBO *%
୶ *% USBDF *% ࢎਊ ਃ ղ ೠ ࣁӒݢী ೠ అ ࣠ ৈࠗ
ࢎਊ ਃী ೠ Ҋਬ ध߹ ৈ۞ ࢲ࠺झ р ୶ਸ ਤ೧ అ ࢲߡী
গܻா࣌ ܴ
Ҋਬ ध߹ݴ ೧ ਃ ഐীࢲ ࢎਊ ے࣌ ղ ؘఠܳ ࣠ೡ ৈࠗܳ
۽Ӧغח ࢲ࠺झ
ݽٚ ࢲ࠺झ ഐী ׳ػ ࢲ࠺झ ഐ ೞա झಃ *%о աఋղח ېӒ
ܴ
11
ೡػ
스프링 클라우드 슬루스는 각 로그 항목마다 네 가지 정보를 추가하는데, 그림 11-1의 번호에 해 스프링 클라우드 슬루스와 집킨을 이용한 분산 추적
당되는 정보는 다음과 같다.
1. 로그를 출력하는 서비스의 애플리케이션 이름이다. 기본적으로 스프링 클라우드 슬루스는 추
적에 기록되는 이름으로 애플리케이션 이름(spring.application.name) 프로퍼티를 사용한다.
2. 추적 ID(trace ID)는 상관관계 ID에 해당하는 용어로 한 트랜잭션 전체에서 고유한 번호다.
3. 스팬 ID(span ID)는 전체 트랜잭션의 일부를 나타내는 고유 ID다. 트랜잭션에 속한 각 서비스
에는 고유한 스팬 ID가 부여되며, 스팬 ID는 특히 집킨과 통합할 때 트랜잭션을 시각화하는
데 관련이 많다.
4. 내보내기(export), 집킨에 추적 데이터 전송 여부(true/false)를 나타내는 지표다. 대용량 서비
스에서 생성된 추적 데이터양이 엄청나게 많더라도 꼭 그만한 가치가 있는 것은 아닐 수 있다.
스프링 클라우드 슬루스는 트랜잭션을 집킨에 언제, 어떻게 보낼지 결정할 수 있게 해 준다.
Note 기본적으로 모든 애플리케이션 흐름은 동일한 추적 ID와 스팬 ID로 시작한다.
407
macrospring_06.indd 407 2022-06-20 오후 1:10:05