참고
액추에이터 개요
NOTE
실행중인 애플리케이션의 내부를 볼 수 있게하고, 모니터링이나 매트릭(metric)과 같은 HTTP와 JMX 엔드포인트를 통해 제공한다.
다음 이미지 처럼 /actuator/health로 들어가면 정보가 나옴!
•
애플리케이션 환경에서 사용할 수 있는 구성 속성들
•
애플리케이션에 포함된 다양한 패키지의 로깅 레벨
•
애플리케이션이 사용 중인 메모리
•
지정된 엔드포인트가 받은 요청 횟수
•
애플리케이션의 건강 상태 정보
액츄에이터 앤드포인트
NOTE
상당히 많은 정보를 제공해준다. (이거보다 더 있음)
액추에이터 사용
NOTE
액츄에이터가 제공하는 프로덕션 준비 기능을 사용하기 위해선 먼저 라이브러리 추가해야함
//actuator 추가
implementation 'org.springframework.boot:spring-boot-starter-actuator'
Groovy
복사
gradle 코드
액츄에이터 기본 경로 구성
NOTE
management:
endpoints:
web:
base-path: /management
YAML
복사
/management로 변경됨!
•
액츄에이터의 모든 엔드포인트 경로에는 /actuator가 앞에 붙는다
•
위의 속성을 설정하여 기본경로를 변경할 수 있다.
액추에이터 엔드포인트의 활성화와 비활성화
NOTE
앤드포인트를 활성화 하는것은 해당 기능을 사용할지 안할지 on, off를 선택하는 것이다.
HTTP 혹은 JMX에 노출할지 선택해야하는데 대부분 HTTP로 한다.
management:
endpoint:
shutdown: # 해당 엔드포인트는 보안이슈로 기본적으로 닫힘 (보통은 다 열려있음)
enabled: true # fasle로 하면 비활성화
endpoints:
web:
exposure:
include: "*" # *으로 표기하면 전체
exclude: "threaddump", "heapdump"
YAML
복사
엔드포인트를 활성화 하는 방식은 1개씩 관리해도되고, web으로 여러개를 한번에 관리해도 된다. (1개는 endpoint, 여러개는 endpoints 이므로 주의!)
•
endpoint.[엔드포인트].enabled=true
◦
특정 엔드포인트에 대해서 활성화 시킨다
•
web.exposure
◦
include를 하면 해당 엔드포인트를 활성화
◦
exclude를 하면 해당 엔드포인트 비활성화
•
shutdown 속성을 post로 보내면 웹 애플리케이션이 종료가 된다.
◦
POST /actuator/shutdown
◦
그래서 기본적으로 비활성화 되어 있음