[windows] prometheus & grafana 설치
환경: windows11, springboot2.7.6, java17
prometheus(저장 서버)
- metrics를 수집하고 모니터링 및 알람에 사용되는 오픈소스 애플리케이션
- 시간순으로 데이터가 남음(time series database; TSDB)
- pull 방식의 구조와 다양한 metric exporter 제
- 시계열 DB에 metrics 저장 -> 조회가능(query)
grafana(시각화)
- 데이터 시각화, 모니터링 및 분석을 위한 오픈소스 애플리케이션
- 시계열 데이터를 시각화하기 위한 대시보드 제공
prometheus 다운로드
https://prometheus.io/download/
os에 맞는 파일을 다운로드하고 압축을 푼다.
1. 폴더 안의 prometheus.yml 수정하여 수집하고자 하는 서비스를 등록
2. prometheus 실행
9090포트로 실행됨
http://localhost:9090/graph
grafana 다운로드
https://grafana.com/grafana/download?platform=windows
os에 맞는 파일을 다운로드하고 압축을 푼다.
bin 폴더 안에 grafana-server.exe파일 실행(공식 문서에서 실행 가이드 확인)
http://localhost:3000/ (admin / admin으로 로그인)
연동
grafana 로그인 후
save & test 클릭
이미 다른사람들이 만들어 놓은 dashboard 불러오기
아래 사이트 방문하여 대시보드 다운로드
https://grafana.com/grafana/dashboards/?pg=docs-grafana-latest-dashboards
id를 복사하여 아래 창의 id 넣는 부분에 붙여 넣기 하면 import 가능
아까 등록한 prometheus 선택하고 import
아래는 대표적인 대시보드
https://grafana.com/grafana/dashboards/3662-prometheus-2-0-overview/
https://grafana.com/grafana/dashboards/4701-jvm-micrometer/
https://grafana.com/grafana/dashboards/11506-spring-cloud-gateway/
import 후 metrics 설정을 다시 해야 제대로 된 결과가 나온다. 각 그래프를 edit 하여 지표를 최신화한다.
sum 부분에는 prometheus 에서 검색가능한 지표를 넣어야 하고
job 부분에는 아까 prometheus.yml 에 넣은 job name을 써야 한다.
여기에 없는 것도 되긴 함.. 따로 찾아봐야 할 듯.
되는 거 하나.. 이거 설정하고 관련 서비스 api 몇 번 쏘고 새로고침하니까 나온다..
spring_cloud_gateway_requests_seconds_count{outcome="SUCCESSFUL", routeId=~"user-service", job=~"apigateway-service"}