[스프링 부트 핵심가이드] 액추에이터 활용 ✨

FeelingXD·2023년 4월 21일
0

북스터디

목록 보기
9/13
post-thumbnail

스프링 액추에이터 ?(Actuator)

🌱 스프링 부트(Spring Boot) 프레임워크에서 제공하는 모듈 중 하나로, 스프링 부트 어플리케이션을 모니터링하고 관리하기 위한 기능을 제공 하며 애플리케이션의 상태, 메트릭, 환경 변수 등의 정보를 가져올 수 있는 엔드포인트를 제공하며, 스프링 액추에이터를 이용하여 애플리케이션에 특화된 커스텀 엔드포인트를 만들 수도 있습니다.

스프링 부트 액추엥이터는 http 엔드포인트나 JMX를 활용해 애플리케이션을 모니터링하고 관리할 수 있는 기능을 제공합니다.

JMS 란? 🤔
JMS(Java Management Extensions)로 실행중인 애플리케이션의 상태를 모니터링하고 설정을 변경할 수 있게 해주는 API 입니다.

⚠️ 의존성 추가하기

실습환경에서는 Maven 을사용합니다. maven pom에 아래와같은 의존성을 추가해 주었습니다.

<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-actuator -->
  <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-actuator</artifactId>
  </dependency>

🍃 스프링부트 엑추 에이터의 엔드포인트

엔드포인트 ?
클라이언트 응용 프로그램이 API를 액세스하는 위치입니다. 현재 글에서는 URL 정도로 생각해주시면 될 것 같습니다.

스프링부트 액추에이터를 추가하면 기본적으로 엔드포트 URL로 /actuator 가 추가되며 이뒤에 경로를 추가 하는것으로 상세 내역에 접근할수 있습니다. 기본적인 액추에이트 경로를 변경하시려면 spring.properties에 따로정의하는것으로 커스터마이징 할수 있습니다.

액추에이터 기능

액추에이터를 활성화하고 기본적인 URL을 설정하였다면 어플리케이션에서 해당 기능을 사용할수있습니다.

기본적인 엔드포인트

info : 애플리케이션의 정보
health : 애플리케이션 상태
metrics : 메모리, 스레드 상태 등
logger : logger 정보를 보고, logging level 변경도 가능하다.
startup/shutdown : 애플리케이션을 재기동에 사용하면 좋을 것 같다.

정리

  • 스프링부트 액추에이터는 실행중인 스프링부트 어플리케이션의 정보에 접근할수있으며 어플리케이션 모니터링의 이점을 같는다.(MSA 아키텍쳐 등에서 각각 운영되는 서비스를 전체적인 모니터링에 도움이 될것같다.)
profile
tistory로 이사갑니다. :) https://feelingxd.tistory.com/

0개의 댓글