Intellij
Spring Boot Actuator - 운영 환경에서 애플리케이션을 모니터링하고 관리하기 위한 기능을 제공
프로젝트에 추가
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-actuator'
}
application.yml 파일에 설정
management:
endpoints:
web:
exposure:
include: health,info,metrics
프로젝트에 추가
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-security'
}
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.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.web.SecurityFilterChain;
@Configuration
@EnableWebSecurity
public class ActuatorSecurityConfig {
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
http.authorizeRequests()
.requestMatchers("/actuator/**").hasRole("ACTUATOR_ADMIN")
.anyRequest().authenticated()
.and()
.httpBasic();
return http.build();
}
}
application.yml 파일에 설정
spring:
security:
user:
name: admin
password: adminpassword
roles: ACTUATOR_ADMIN
/actuator/health: 애플리케이션 상태 확인
/actuator/info: 애플리케이션 정보
/actuator/metrics: 다양한 메트릭 정보
/actuator/env: 환경 설정 정보
/actuator/loggers: 로그 레벨 확인 및 변경
Spring Boot Actuator - 애플리케이션을 모니터링을 위한 강력한 도구
Security를 사용해 접근을 제한함으로써, 안전하게 애플리케이션을 모니터링하고 관리할 수 있음
Actuator, Security를 사용해 애플리케이션의 안정성과 성능 향상에 큰 도움이 됨