Prometheus(Banilla)

김도비·2022년 10월 16일
0

Monitoring

목록 보기
4/5

Apache Prometheus

프로젝트 도중 스프링부트로 메트릭 등록 및 수집하는 기능이 아닌 스프링을 이용한 메트릭 수집이 필요해 기능 개발한 것에 대해 적어본다.

먼저 사용되는 라이브러리 목록

io.prometheus:simpleclient
io.prometheus:simpleclient_hotspot
io.prometheus:simpleclient_httpserver

메트릭 수집할 수 있는 HTTP SERVER(Client) 생성 필요하다.

HTTPServer server = new HTTPServer(9990);
DefaultExports.initialize();

DefaultExports는 프로메테우스 자바 클라이언트가 제공하는 기본 JVM관련 지표를 포함하여 넘겨줄지 여부를 결정한다.

여기서 count,gauge 등을 사용해 추가적으로 내가 노출하고자 하는 메트릭을 등록하여 사용하면 된다.

내가 사용했던 카운터를 사용 예시다.

Counter counter = Counter.build()
.name("cus_info").help("customer event info")
.labelNames("cusno").register();

첫번째로 카운터를 등록하는 과정이다.

counter.labels("cusno").inc();

두번째로 해당 카운터를 증가시키는 기능이다.

스프링부트가 아닌 스프링을 통해 메트릭을 노출시키고 싶을 때 사용하면 될거같다.

profile
모든 걸 기록하자

0개의 댓글