서버 성능분석을 위한 모니터링 스택(Spring Boot Actuator, Prometheus, Grafana)
서버 성능분석을 위한 모니터링 스택(Spring Boot Actuator, Prometheus, Grafana) — #개발자의도구들 #서버성능분석 #SpringbootActuator #Prometheus #Grafana AI스쿨 msa기반 java 백...
#개발자의도구들 #서버성능분석 #SpringbootActuator #Prometheus #Grafana
AI스쿨 msa기반 java 백엔드 코스 중에 공부한 내용을 작성하였습니다
\* 현재 Spring x 프로젝트를 진행하고 있습니다. 전체 목차를 보시려면 여기를 눌러주세요.
\* Devops stack: 여기
\* 리눅스 기본기: 여기
성능 분석을 위한 스택
ELK는 서비스 중에 발생하는 로그 분색을 위한 도구였다면, 이번에 다룰 모니터링 스택은 서버 자원을 분석하는 스택이 되겠습니다. 여기서 서버 자원이라함은 CPU, GPU, Memory, network... 등 실제 물리적인 자원을 의미합니다.
Spring Boot Actuator
Spring Boot Actuator는 Spring Boot에서 제공하는 라이브러리로 서버의 여러 리소스 데이터를 수집하여 사용자에게 제공해줍니다.
endpoint를 제공해주어 사용자가 쉽게 다양한 상태에 접근하도록 합니다.
자세한 endpoint는 공식문서를 참조하세요.
https://docs.spring.io/spring-boot/reference/actuator/endpoints.html
[Endpoints :: Spring Boot
Spring Boot / Reference / Production-ready Features / Endpoints Endpoints Actuator endpoints let you monitor and interact with your application. Spring Boot includes a number of built-in endpoints and lets you add your own. For example, the health endpoint provides basic application health informati...
docs.spring.io](https://docs.spring.io/spring-boot/reference/actuator/endpoints.html)
Prometheus
Elastic Search가 로그를 저장하는 데이터 베이스였다면, Prometheus는 서버 리소스 분석을 위한 데이터 베이스로 보시면 됩니다.
보통 Spring boot Actuator에서 제공하는 API(endpoint)를 pull 하여 데이터를 수집 및 저장합니다.
Grafana
Kibana와 마찬가지로 Promethus에 저장된 데이터를 시각화 하여 보여주기 위한 도구입니다.