spring-boot-actuator은(는) 무엇을 하나요?
Spring Boot Actuator를 프로덕션 등급 모니터링, 헬스 프로브, 보안 관리 엔드포인트, Micrometer 메트릭으로 구성하는 패턴을 제공합니다. Spring Boot 애플리케이션의 모니터링, 헬스 체크, 메트릭 설정 시 사용하세요.
주요 기능
- 헬스 프로브: Kubernetes 환경의 활성 프로브(readiness probe) 및 생존 프로브(liveness probe) 설정
- 보안 관리 엔드포인트: Actuator 엔드포인트에 대한 인증 및 권한 부여 구성
- Micrometer 메트릭: Prometheus, Graphite 등 다양한 모니터링 시스템으로 메트릭 내보내기
- 커스텀 헬스 지표: 애플리케이션 특화 상태 확인 구현
사용 방법
1. 의존성 추가
build.gradle:
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-actuator'
implementation 'io.micrometer:micrometer-registry-prometheus' // Prometheus 사용 시
}
pom.xml:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>
2. 애플리케이션 설정 (application.yml)
management:
endpoints:
web:
exposure:
include: health,info,prometheus,metrics
endpoint:
health:
show-details: always
probes:
enabled: true
metrics:
tags:
application: ${spring.application.name}
3. 헬스 프로브 설정 (Kubernetes)
spring:
application:
name: my-app
management:
endpoint:
health:
group:
readiness:
include: readinessState,db
liveness:
include: livenessState,ping
4. 보안 설정
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.web.SecurityFilterChain;
@Configuration
public class ActuatorSecurityConfig {
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
http
.authorizeHttpRequests(authz -> authz
.requestMatchers("/actuator/health").permitAll()
.requestMatchers("/actuator/info").permitAll()
.requestMatchers("/actuator/**").hasRole("ADMIN")
.anyRequest().authenticated()
)
.httpBasic();
return http.build();
}
}
지원 플랫폼
이 스킬은 다음 AI 에이전트와 함께 사용할 수 있습니다:
- Claude Code
- Cursor
- Codex (GitHub Copilot)