5.5. Prometheus를 사용하여 브로커 런타임 데이터에 액세스
사전 요구 사항
- Prometheus 플러그인에서 수집한 브로커 런타임 데이터를 쿼리하고 시각화하려면 Prometheus를 설치해야 합니다. 자세한 내용은 Prometheus 설명서에서 Prometheus 설치를 참조하십시오.
프로세스
-
Prometheus 설치 디렉터리에서
prometheus.yml
구성 파일을 엽니다. -
구성 파일의
static_configs
섹션에서targets
요소를localhost:8161
로 변경합니다. 이 위치는 브로커가 웹 서버를 실행하는 위치입니다. 기본적으로/metrics
는 이 호스트 이름에 추가되어 브로커 웹 서버에 저장된 지표의 전체 경로를 구성합니다. Prometheus 플러그인에서 수집한 브로커 런타임 지표를 보려면 웹 브라우저에서
localhost:8161/metrics
를 엽니다.결과 웹 페이지에서 브로커에 구성한 큐 및 주소에 따라 플러그인에서 수집한 지표의 현재 값이 표시됩니다. JVM에 실행 중인 브로커 인스턴스가 두 개 이상 있는 경우 각 브로커에 대한 메트릭이 표시됩니다.
Prometheus 설치 디렉터리에서 Prometheus를 실행합니다.
$ ./prometheus
Prometheus가 시작되면 쉘 출력에 다음 행이 포함됩니다.
component=web, msg=”Start listening for connections” address=0.0.0.0:9090
이전 줄은 Prometheus가 포트 9090에서 HTTP 트래픽을 수신 대기 중임을 나타냅니다.
-
Prometheus 웹 콘솔에 액세스하려면 웹 브라우저에서
127.0.0.1:9090
을 엽니다. Prometheus 웹 콘솔에서
Expression
필드를 사용하여 브로커 데이터에 쿼리를 생성할 수 있습니다. 생성하는 쿼리는 Prometheus 쿼리 언어인 PromQL을 기반으로 합니다. 쿼리에 삽입할 수 있는 브로커 메트릭은Insert metric
드롭다운 목록에 있습니다.간단한 예로, 시간 경과에 따라 DLQ 대기열에서 메시지 수를 쿼리하려고 한다고 가정합니다. 이 경우 메트릭 드롭다운 목록에서
artemis_message_count
를 선택합니다. DLQ 대기열 이름과 주소를 지정하여 쿼리를 완료합니다. 이 예제 쿼리는 다음과 같습니다.artemis_message_count{address=“DLQ”, queue=“DLQ”}
고급 시각화의 경우 정규식을 사용하여 여러 메트릭을 오버레이하는 복잡한 쿼리를 만들 수 있습니다. 또는 집계와 같은 여러 메트릭에서 수학적 작업을 수행할 수 있습니다. Prometheus 쿼리 생성에 대한 자세한 내용은 Prometheus 문서의 Prometheus 쿼리를 참조하십시오.