Prometheus + grafana 적용기(1)

조현진·2025년 5월 4일

Prometheus&Grafana

목록 보기
1/4
post-thumbnail

기초 개념

1. Spring Boot Actuator란?

Spring Boot Actuator는 애플리케이션의 상태(헬스 체크, 메트릭, 환경 정보 등)을 모니터링하고 관리할 수 있는 다양한 엔드포인트를 제공한다.

공식문서: https://docs.spring.io/spring-boot/reference/actuator/metrics.htm

2. Micrometer란?

Micrometer는 다양한 모니터링 시스템과 통합할 수 있는 벤더 중립적인 메트릭 수집 라이브러리.
SLF4J가 로깅의 추상화를 제공한다면 Micrometer는 메트릭 수집의 추상화를 제공. 이를 통해 Prometheus, Datadog, New Relic 등 다양한 모니터링 시스템과 쉽게 통합 가능.

스프링 2.0부터 Spring Actuator는 내부적으로 Micrometer를 이용해 메트릭을 수집한다. 즉 Micrometer가 메트릭을 수집하면, 이를 Actuator가 외부로 노출시키는 역할을 함.

3. Prometheus와 Grafana

Prometheus: 시계열 데이터베이스로, 애플리케이션에서 수집한 메트릭을 저장하고 쿼리 가능.

Grafana: 시각화 도구로, Prometheus에서 수집한 데이터를 기반으로 대시보드를 구성하여 메트릭을 시각적으로 표현 가능.


프로메테우스를 기존 프로젝트에 도커 컴포즈로 한번에 붙이기 전에, 윈도우 환경으 로컬에 따로 설치해서 확인해보려고 한다.

프로젝트에 Actuator와 Prometheus 의존성 추가(gradle)

//Actuator
implementation 'org.springframework.boot:spring-boot-starter-actuator'
//Prometheus
implementation 'io.micrometer:micrometer-registry-prometheus'

메트릭 API 노출(application.yml 등 설정파일 설정)

management:
 endpoints:
   web:
     exposure:
       include: "health, info, metrics, prometheus"
 endpoint:
   prometheus:
     enabled: true

프로메테우스 다운

프로메테우스 공식 홈페이지: https://prometheus.io/

프로메테우스 yml파일에서 target을 설정해준다.

grafana 다운

그라파나 공식 홈페이지: https://grafana.com/

0개의 댓글