본문 바로가기

빅데이터

프로메테우스, 그라파나 사용시 레이블 값 추출, Legend 선택, 여러 variable을 포함하는 쿼리 작성.

1. regex를 통해 프로메테우스 데이터 모델의 레이블 값 추출하기

프로메테우스의 메트릭은 아래와 같은 형태로 되어 있습니다.

<메트릭 이름>{<레이블 키>=<레이블 값>, <레이블 키>=<레이블 값> ...} <메트릭 값> [<timestamp>]

그라파나의 variable에 레이블 값을 사용하고 싶을 때는 아래와 같이 설정합니다.

 

1) Variable 생성, 설정

2) Query Options 설정

Data source : 메트릭이 존재하는 프로메테우스 선택

Query : 메트릭 이름 입력(여기서는 burrow 수집 데이터)

Regex : 정규식 형태로 레이블 키에 속한 레이블 값 뽑아내기

/.*group="([^"]*).*/

위와 같은 정규식 형태를 사용해서 prefix를 가지고 있는 레이블 값만 뽑아낼 수도 있습니다.

/.*group="((spark-)[^"]*).*/

spark- 로 시작하는 consumer group 뽑아내기

2. 레이블값을 기준으로 그래프 테이블 노출하기

그라파나 그래프를 프로메테우스 promQL로 작성할 때 Legend에 레이블 키를 입력함으로서 그래프의 메트릭 이름을 노출할 수 있습니다.

{{topic}} // {{group}}

3. 그라파나 variable들이 여러개 일때 모두 포함하는 그래프를 그리는 PromQL

=~ 를 통해 여러 값을 포함하는 query를 수행할 수 있습니다.

burrow_partition_lag{group=~"$group"}
반응형