Prometheus & Grafana

prometheus는 모니터링 하기 원하는 리소스로부터 metric을 수집하고 해당 metric을 이용해서 모니터링하는 기능을 제공합니다.

Prometheus 도 다른 툴과 마찬가지로 .yml 파일을 이용하여 환경 설정을 하는데

- job_name: "spring-actuator"
    metrics_path: '/actuator/prometheus'
    scrape_interval: 30s
    static_configs:
      - targets: ['flashfrenzy99.com']
    scheme: https

이런식으로 우리 서버의 actuator에 접근해서 metric을 수집하여 모니터링을 구축하였습니다.

Grafana는 멀티플랫폼 오픈 소스 애널리틱스 및 인터랙티브 시각화 웹 애플리케이션입니다.

지원되는 데이터 소스에 연결될 때 웹의 차트, 그래프, 경보를 제공한다. 추가 기능이 포함된 라이선스된 GRafana Enterprise 버전은 셀프 호스팅된 설치본으로, 또는 Grafana Labs 클라우드 서비스의 계정으로 이용이 가능하다. 플러그인을 통해 확장이 가능합니다.

Grafana에서 local에 있는 prometheus와 연동하여 보다 쉽게 모니터링할 수 있는 환경을 구축 했습니다.

Data flow

Spring server’s actuator → prometheus → grafana → User

FlasyFrenzy 프로젝트의 유지보수를 위한 모니터링