Java로부터의 감시 입문 Prometheus에 접한다
6354 단어 자바prometheus
Prometheus는 무엇입니까?
풀 타입의 감시 시스템. OSS.
메모리, CPU 사용량 등을 감시할 수 있는 시스템.
풀형 감시 시스템은 무엇입니까?
일반적인 감시 시스템 (Meckerel, Sensu 등)은
모니터링 할 측에 에이전트를 설치하고 모니터링 서버에 정보를 보냅니다.
반대로 Pull 형은, 감시 서버가 감시하는 측으로부터 정보를 취득한다.
장점 단점
Push 형
[혜택]
· 감시 대상에 앱을 설치하는 것만으로 간단
・감시 대상이 증가해도 서버의 설정 변경이 적다
[단점]
· 감시량이 증가하면 감시 서버의 부하가 많습니다.
Pull형
[혜택]
・감시 대상이 다운하고 있는 것을 Push형보다 간단하게 알 수 있다
· 감시 서버의 부하가 Push보다 낮은 부하
[단점]
· 감시 대상 엔드포인트를 설정해야 한다. 단순 설치만이 아니다.
· 감시 대상이 증가하면 매번 설정이 필요합니다.
이번 목표
Spring의 응용 프로그램에서 Promethus와 데이터를 연결하고,
Grafana(그라파나)로 좋은 느낌으로 표시한다.
절차
Spring에서 Promethus 엔드포인트 생성
Spring Initializr [ h tps : // s rt. sp 링 g. 이오/ ]에서 Spring Actuator를 추가.
Spring Actuator(액추에이터)는 Spring의 덤프나 헬스 체크 등을 확인할 수 있게 된다.
종속성에 Micrometer Registry Prometheus를 세트.
[ htps : // mv 넝마와 ry. 코 m/아 r치후ぁct/이오. 미 c 로메 r / 미 c 로메 r ri striy p 로메 s s ]
속성 파일에서 엔드포인트를 엽니다.
application.properties
# フルオープン
management.endpoints.web.exposure.include=*
어플리케이션을 기동해 엔드포인트가 생겼는지 확인.
Prometheus 설정
다음 YML로 설정 가능
prometheus.yml
global:
# Target取得の頻度
scrape_interval: 10s
evaluation_interval: 10s
#監視対象の設定
scrape_configs:
# Spring Boot App Exporter 監視設定
- job_name: 'springboot'
metrics_path: '/actuator/prometheus'
static_configs:
- targets: ['web:8080']
labels:
group: 'docker-springboot'
Prometheus, Grafana, 앱 시작
DockerCompose로 시작합니다.
docker-compose.yml
version: '3.1'
services:
web:
build: app/
ports:
- "8080:8080"
monitor:
build: prometheus/
ports:
- "9090:9090"
depends_on:
- "web"
grafana:
image: grafana/grafana
ports:
- "3000:3000"
Prometheus 확인
▼감시 대상을 확인하는 화면
▼ 그래프 확인 화면
하지만 그래프의 UI가 이치이치. 그래서 Grafana에서 본다.
Grafana 확인
URL : http://localhost:3000
ID: admin(초기)
PASS: admin(초기)
▼ 데이터 소스 선택
다음과 같이 URL 설정
▼ 대시보드 작성
AddQuery 선택
그 후에는 자신의 취향에 따라 설정
기타 여담
· Spring에서 설정하는 Promethuns의 엔드포인트 클래스는 상속하여 독자 커스터마이즈 가능
· 통지 설정이 Promethuns와 Grafana는 힘들지도
Reference
이 문제에 관하여(Java로부터의 감시 입문 Prometheus에 접한다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/haruto167/items/c3a232ec042f4999d022텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)