프로그래밍/Spring

액츄에이터 Actuator

hwangsehee 2025. 1. 15. 00:13

📌spring boot가 제공하는 Actuator 는 애플리케이션의 상태를 모니터링하고 관리할 수 있는 유용한 기능을 제공하는 운영도구이다. 

마이크로미터, 프로메테우스, 그라파나 같은 모니터링 시스템과 매우 쉽게 연동할 수 있는 기능도 제공한다.

 

액추에이터가 제공하는 기능 하나하나를 엔드포인트라고 한다. 

각각의 엔드포인트는 /actuator/{엔드포인트명}과 같은 형식으로 접근 할 수 있다

ex) http://localhost:8080/actuator/health : 애플리케이션 헬스 정보를 보여준다. 

 

 

실시간 로그 레벨 변경해보기 (서버 재시작하면 다시 원복)

post로 body에 json으로 trace로 변경 메세지 전송 

get으로 다시 확인했을 때 로그 레벨이 trace로 바뀌어있음 

 

 

마이크로미터(micrometer)
  • 마이크로미터 표준 측정 방식을 통해 손쉽게 모니터링 툴을 갈아 끼울 수 있다. 
  • 마이크로미터가 추상화를 통해서 구현체를 쉽게 갈아끼울 수 있도록 해두었다. 
  • 스프링 부트 액츄에이터는 마이크로미터를 기본을 내장해서 사용한다. 
  • 개발자는 마이크로미터가 정한 표준 방법으로 메트릭(측정 지표)를 전달하면된다. 
  • 스프링 부트 엑츄에이터는 마이크로미터가 제공하는 지표 수집을 @AutoConfiguration을 통해 자동으로 등록해준다. 
  • 사용자가 직접 메트릭을 정의할 수도있다. ex) 주문수, 취소수 
프로메테우스(Prometheus)
  • 애플리케이션에서 발생한 메트릭을 과거 이력까지 함께 확인하려면 메트릭을 보관하는 DB가 필요하다. 
  • 어디선가 메트릭을 지속해서 수집하고 DB 에 저장해야 한다. > 프로메테우스의 역할
  1. 스프링 부트 액츄에이터와 마이크로미터를 사용하면 수 많은 메트릭을 자동으로 생성한다. 
  2. 마이크로미터 프로메테우스 구현체는 프로메테우스가 읽을 수 있는 포멧으로 메트릭을 생성한다.
  3. 프로메테우스는 이렇게 만들어진 메트릭을 지속해서 수집한다. 
  4. 프로메테우스는 수집한 메트릭을 내부 DB에 저장한다. 
  5. 사용자는 그라파나 대시보드 툴을 통해 그래프로 편리하게 메트릭을 조회한다.
  6. 이때 필요한 데이터는 프로메테우스를 통해 조회한다. 

간단하게 system cpu 사용량 조회해보기 

 

※ 김영한 - 스프링부트 핵심 원리와 활용편을 듣고 복습 목적으로 작성되었습니다.