JMX와 HTTP
JMX(Java Management Extension)
응용 프로그램/객체/장치 및 서비스 지향 네트워크 등을 감시 관리를 위한 도구를 제공하는 자바 API이다.
응용 프로그램/객체/장치, 서비스 지향 네트워크는 MBean
이라는 객체로 표현된다.
JConsole 사용하기
1. Web Application 실행
2. Termianl에서 jconsole
입력
// Terminal
jskim@DESKTOP-SI6DJ17 MINGW64 /d/dev/study/EduApplication
$ jconsole
JConsole 사용방법
1. 로컬에서 동작하는 Web Application 프로세스 선택 후 Connect
2. SSL이 적용되어 있지 않기 때문에 Insecure connection
3. Application이 사용하는 다양한 정보 요약 화면 표시
* Tab 별로 다양한 정보 확인 가능
참고
https://docs.oracle.com/javase/tutorial/jmx/mbeans/
https://docs.oracle.com/javase/7/docs/technotes/guides/management/jconsole.html
VisualVM 사용하기
1. Java 10
부터는 VisualVM
이 포함되지 않아 https://visualvm.github.io/download.html 에서 다운받아 실행
또는, Terminal에서 jvisualvm
입력
// Terminal
jskim@DESKTOP-SI6DJ17 MINGW64 /d/dev/study/EduApplication
$ jvisualvm
VisualVM 사용방법
1. Application 더블 클릭 시 다양한 정보 요약 화면 표시
* Tab 별로 다양한 정보 확인 가능
MBean Tab 추가 방법
1. Tools - Plugins 실행
2. Available Plugins Tab에서 mbean 검색 후 체크하여 install
3. Application 새로 선택하면 MBeans Tab 생긴것 확인
HTTP
HTTP를 이용하여 Endpoint 확인 가능하다.
HTTP 공개 옵션 조정
HTTP에서는 health
와 info
를 제외한 대부분의 Endpoint
가 기본적으로 비공개 상태이기 때문에 공개 옵션을 application.properties
를 통해 조정한다.
// application.properties
management.endpoints.web.exposure.include=*
동작 확인
다양한 정보를 볼 수 있기 때문에 스프링 시큐리티 통해 Endpoint
를 Admin만 접근 가능하게 해야 보안 문제가 없다.
'Dev > Spring Boot' 카테고리의 다른 글
[스프링 부트 개념과 활용] 스프링 부트 Actuator 3부 (0) | 2020.09.03 |
---|---|
[스프링 부트 개념과 활용] 스프링 부트 Actuator 1부 (0) | 2020.09.03 |
[스프링 부트 개념과 활용] 그 밖에 다양한 기술 연동 (0) | 2020.09.03 |
[스프링 부트 개념과 활용] 스프링 REST 클라이언트 2부 (0) | 2020.09.03 |
[스프링 부트 개념과 활용] 스프링 REST 클라이언트 1부 (0) | 2020.09.03 |
댓글