본문 바로가기
개발/개발이야기

Springboot JPA kotlin - spring cloud에서 몇가지 적용해보자~

by rCan 2023. 3. 20.
728x90
반응형

https://github.com/rcaninhu/springboot3-demo

GitHub - rcaninhu/springboot3-demo

Contribute to rcaninhu/springboot3-demo development by creating an account on GitHub.

github.com

extra["springCloudVersion"] = "2022.0.1"
dependencyManagement {
    imports {
        mavenBom("org.springframework.cloud:spring-cloud-dependencies:${property("springCloudVersion")}")
    }
}

dependencies {
	...
    ...
    ...
    
    org.springframework.boot:spring-boot-starter-actuator
    org.springframework.cloud:spring-cloud-starter
    org.springframework.cloud:spring-cloud-starter-bootstrap
    
    ...
    ...
    ..
}
# 추가추가~

 
actuator을 추가 하시면 몇몇가지 좋은게 있어요~

/actuator 경로에 뭔가가 엔드포인트가 생겼습니다 웹화면으로 접속해볼까요~~~

localhost:63673/actuator/health라는게 또 있네요 접속해보면
 

status : up 이라고 전송해주네요.
어떻게 활용할수 있을까요~
지금은 단순히 하나의 서비스에서 호출하지만 서비스간 통신이라던가 프록시/게이트 에서 헬스 체크 할때 사용하면 좋겠져~
주기적으로 가령 10초마다 /health를 체크 하고 리스폰스가 없다 하면 해당 서비스의 장애가 발생한거고 해당내역을 담당자에게 보내주면 되겠져 
1번응답 안줬다고 장애라고 처리 하기엔 야박하니까 10초씩 3번 연속 호출에 대한 응답이 없을경우 해당 서비스의 장애라 판단하고 알람을 가게 해주면 될것 같으네요.
그러면 서비스가 살아 있는경우 메모리 점유라던가 지금 서비스의 상태를 보고 싶다~고 느끼고 
해당서비스를 모니터링은 좀더 하고 싶다~고 느끼면 아래처럼~
일단 프로메테우가 수집할수 있도록 준비를 해봅시다~
일단 아래 패키지를 디펜던시에 추가 해주시고~

runtimeOnly("io.micrometer:micrometer-registry-prometheus")

프로메테우스 앤드포인트를 추가하고 인쿠르드 시켜줍니다~

management:
  endpoints:
    prometheus:
      enabled: true
    web:
      exposure:
        include: prometheus

이렇게 추가 했더니 어~?
 

아까 봤던 헬스가 사라졌습니다!

management:
  endpoints:
    prometheus:
      enabled: true
    web:
      exposure:
        include:
          - prometheus
          - health

추가추가. 헬스도 추가 프로메테우스도 추가 합니다~

다시 모두 모두 추가~
 
다음번에는 
제가 좋아하는 하시코프사의 consul에 대해서  알아 보도록 하려고 합니다~~
그때까지 ~~ 즐거운개발 ~~~~
 

728x90
반응형
SMALL

댓글