-
Spring Boot | Prometheus + Grafana 모니터링▼ Backend/스프링 (Spring) 2023. 2. 10. 15:21반응형
모니터링 시스템 구축
스프링 부트 웹 애플리케이션을 배포한 뒤 프로메테우스, 그라파나로 모니터링 시스템을 구축한다.
구성환경
Spring Boot, Gradle, Docker
Prometheus
- Metrics를 수집하고 모니터링 및 알람에 사용되는 오픈소스 애플리케이션
- Pull 방식의 구조와 다양한 Metrics Exporter 제공
- 시계열 DB에 Metrics 저장 -> 조회 가능
Grafana
- 데이터 시각화, 모니터링 및 분석을 위한 오픈소스 애플리케이션
- 시계열 데이터를 시각화하기 위한 대시보드 제공
build.gradle
implementation 'org.springframework.boot:spring-boot-starter-actuator' implementation 'io.micrometer:micrometer-registry-prometheus'
application.yml
management: endpoints: web: exposure: include: health, info, metrics, prometheus
프로메테우스(Prometheus) 설치
- 직접 설치
- 도커로 설치
- docker run -d --name=prometheus -p 9090:9090 prom/prometheus
prometheus.yml 수정 (경로: /etc/prometheus, 윈도우는 설치 폴더 경로
- metrics_path 을 아래와 같이 설정한다.
- targets 을 스프링부트 웹 애플리케이션으로 주소로 설정한다.
- 현재는 도커 기준이라 host.docker.internal로 되어있다. 예) http://localhost:8080
scrape_configs: - job_name: 'spring--app' metrics_path: '/actuator/prometheus' static_configs: - targets: ['host.docker.internal:8080']
프로메테우스 실행
http://localhost:9090 접속 후 Status탭 → Targets에 스프링부트 웹 애플리케이션이 등록되어 실행중인지 확인한다.
Graph 탭으로 이동해서 jvm_memory_used_bytes 입력 후 실행(Execute)하면 메모리 사용량을 확인 할 수 있다.
그라파나(Grafana) 설치
- 직접 설치
- 도커로 설치
- docker run -d --name=grafana -p 3000:3000 grafana/grafana
그라파나(Grafana) 접속
http://localhost:3000 주소로 접속한다. 초기 계정은 admin/admin
데이터 소스 추가
대시 보드 추가
대시보드
반응형'▼ Backend > 스프링 (Spring)' 카테고리의 다른 글
Spring Boot | bootWar, war 내,외장 톰캣으로 실행하기 (0) 2023.02.27 Spring Boot | Redis로 세션 클러스터링 적용하기 (0) 2023.02.03 Spring | IOC, DI, Bean (0) 2023.01.28 Spring Boot | JPA, 다중 데이터베이스 구성하기 (0) 2022.05.25 Spring Boot | application.properties(yml) 환경에 맞게 분리하기 (0) 2022.05.13