Prometheus로 메트릭 쿼리하기

Prometheus로 메트릭 쿼리하기 (Query metrics with Prometheus)

이 문서에서는 Grafana MCP 서버를 사용해 AI 어시스턴트가 Grafana의 Prometheus 데이터소스에서 PromQL 쿼리를 실행할 수 있게 하는 방법을 알아봐요. 즉시(instant) 또는 범위(range) 쿼리를 실행하고 메트릭·레이블 이름과 값을 탐색할 수 있어요.

출처: 문서

본문

달성할 목표 (What you'll achieve)

어시스턴트에게 메트릭을 확인하거나 PromQL 표현식 실행을 요청해요. 그러면 어시스턴트가 서버의 Prometheus 도구를 사용해 쿼리를 실행하고 결과를 반환해요(또는 사용 가능한 메트릭과 레이블을 설명해요).

시작하기 전에 (Before you begin)

  • 설정 구성
  • datasources:query datasources:uid:<uid>

PromQL 쿼리 실행 (Run a PromQL query)

MCP 클라이언트에서 어시스턴트에게 Prometheus를 쿼리하도록 요청해요. 예를 들어 "Prometheus 데이터소스에서 up의 현재 값이 뭐야?" 또는 "이 PromQL을 실행해 줘: rate(http_requests_total[5m])"라고 말할 수 있어요. 어시스턴트는 데이터소스 UID와 시간 범위와 함께 서버의 Prometheus 쿼리 도구를 사용해요. 즉시 쿼리(단일 값)나 범위 쿼리(시간에 따른 시리즈)를 요청할 수 있어요.

메트릭과 레이블 탐색 (Discover metrics and labels)

어시스턴트에게 특정 셀렉터에 대한 메트릭 이름, 레이블 이름, 또는 레이블 값을 나열하도록 요청해요. 서버는 Prometheus API(메트릭 메타데이터, 레이블 이름, 레이블 값)를 호출하는 도구를 노출해요. PromQL을 작성하기 전에 이들을 사용해 무엇이 있는지 탐색해요.

list_prometheus_metric_names는 페이지당 기본 10개의 결과를 반환해요. page와 limit의 곱은 10,000을 초과하면 안 돼요. 초과하고 10,000개 이상의 결과를 탐색해야 한다면 정규식을 좁혀 결과를 줄여요. Prometheus 호환 백엔드의 경우 정규식 필터링과 가져오기 제한(fetch limit)이 데이터소스로 전송되는데, 데이터소스는 응답을 제한하기 위해 limit 파라미터를 지원해야 해요. Cloud Monitoring은 계속해서 메트릭 설명자를 로컬에서 필터링해요.

다음 단계 (Next steps)

  • Loki로 로그 쿼리하기
  • 대시보드 패널 쿼리 실행하기

더 알아보기 (Learn more)