1. maven 파일
<!-- zipkin -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
<version>2.2.3.RELEASE</version>
</dependency>
2. application.yml
spring:
application:
name: user-service
zipkin:
base-url: http://127.0.0.1:9411
enabled: true
sleuth:
sampler:
probability: 1.0
3. 원하는 포인트에 log 남겨서 확인. 아래에서는 log.info() 부분
log.info("Before call orders microservice");
CircuitBreaker circuitBreaker = circuitBreakerFactory.create("circuitbreaker");
List<ResponseOrder> orderList = circuitBreaker.run(()->orderServiceClient.getOrders(userId),
throwable -> new ArrayList());
log.info("After called orders microservice");
4. 아래 명령으로 zipkin 서버 다운받은 후 zipkin 서버 실행
curl -sSL https://zipkin.io/quickstart.sh | bash -s
java -jar zipkin.jar
마이크로 서비스들이 서로간에 호출을 하면서 발생되었던 순차적인 흐름들, 순차적인 데이터 호출 관계 이력을 정확하게 보관하고 있는 역할을 zipkin 서버가 수행하고, 스프링부트에서 발생했던 로그 값을 zipkin 서버로 전달하는 것을 sleuth 라이브러리가 처리해줌
'MSA > MSA관련기술' 카테고리의 다른 글
테스트 코드 커버리지 측정 (jacoco 활용) (0) | 2022.12.18 |
---|---|
마이크로미터 (0) | 2022.12.08 |
서킷브레이커 (Resilience4j) 환경설정 방법 (0) | 2022.12.06 |
CircuitBreaker(서킷 브레이커)와 Resilience4J (0) | 2022.12.06 |
kafka 데이터 동기화 방법, connect (0) | 2022.12.04 |
댓글