JMX를 활용한 자바 애플리케이션 대시보드 구축 1단계(jmx-exporter + Prometheus + Grafana)
Date: Updated:카테고리: java
개요
metric 데이터를 수집하기 위해 Tomcat과 jmx-exporter를 활용하여 metric를 추출하는 작업을 진행한다.
jmx-exporter의 설정 파일 생성
jmx-exporter를 실행하려면yaml포맷의 config파일이 필요하다. config 파일의 내용을 다음과 같이 작성하자.
jmx_config.yaml
---
startDelaySeconds: 5
ssl: false
lowercaseOutputName: false
lowercaseOutputLabelNames: false
(옵션에 대한 내용들은 https://github.com/prometheus/jmx_exporter#configuration 를 참고)
Tomcat 설정을 통한 프로젝트 배포 시 metric 추출
-
이제
Tomcat에 Java Option을 추가하자.tomcat[version]w.exe파일 실행 혹은cmd에 //ES 명령어를 통해TomcatGUI 환경을 실행하자. Java탭 >Java Options안에 다음과 같은 내용을 추가한다.javaagent:[실제파일경로]/jmx_prometheus_javaagent-0.17.0.jar=[port]:[실제파일경로]/jmx_config.yaml- 여기서 입력한
[port]에metric추출을 위한HTTP endpoint가 자동 설정된다. 
General탭으로 돌아와서 적용을 누른뒤Start를 클릭하여Tomcat서버를 구동한다.
- (이때 정상적으로 시작되지 않으면 jmx_exporter의 파일경로를 다시 확인해보거나 설정파일 내용을 다시 확인해보자. 필요없는 공백이 포함되는경우 정상 실행되지 않는다.)
- 정상적으로 구동되면
http://localhost:[port]/metrics로 접속하여 확인해본다.- 이때
[port]는 위에 Java Options에서 입력한[port]를 입력한다. 
- 해당 화면과 같은 내용이 출력 된다면
metric추출에 성공한 것이다.
- 이때
추출을 완료하였으니 다음장에서 Prometheus 서버로 추출한 metric 수집을 해보자.
댓글남기기