Grafana Panel Guide

Print

Graph

General

  • Title- 패널 제목이며 입력함 제목은 패널 상단에 표시된다 

  • Description - 패널 상세 설명이며 패널의 왼쪽 상단 info 아이콘에 mouse over 시 표시된다.

  • Transparent - 이 옵션을 체크하면 패널의 단색 배경을 제거한다. 

  • Repeat - 변수의 값만큼 패널을 반복한다. 상세 내용 참고

  • Drilldown / detail link - 이 섹션에서 다른 Dashboard 또는 URL에 연결할 수있는 동적 링크를 패널에 추가 할 수 있다.


Metric

Metric 탭에서 시각화할 데이터 소스와 query를 정의한다. 데이터 소스 종류에 따라 Metric 설정은 다를 수 있다.(다음은 InfluxDB 타입의 Query 정의에 대한 설명이다). 

Cloud Z Monitoring에서는 InfluxDB 형태의 기본 datasource를 제공한다.

기본으로 제공하는 datasource외의 다른 datasource도 Configuration → Data Sources 메뉴를 사용하여 신규로 등록하여 사용 할 수 있다

  • Filter data (WHERE)

태그 필터를 추가하려면 WHERE 조건의 오른쪽  + 버튼을 클릭한다. 태그 필터를 제거하려면 태그 키를 클릭하여 --remove tag filter--를 선택한다.

  • Field & Aggregation 함수

SELECT 부분에서 필드와 함수를 지정해 준다. time으로 grouping 할 경우 집계 함수가 필요하다.  +버튼을 클릭하여 field를 추가할 수 있고, * 를 입력하여 모든 field를 선택할 수 있다.

  • Group By

Grouping하려면 GROUP BY 행에서 +버튼을 클릭한다. 버튼 클릭 시 Dropdown 메뉴가 나타나며 여기서 grouping할 태그를 선택한다. 태그를 클릭하면 Remove 버튼이 생기며 이 클릭하여 태그를 삭제할 수 있다. 

  • Text Editor Mode (RAW) 

버튼을 클릭하여 Toggle Edit Mode를 선택하면 쿼리 모드로 전환된다.

Raw query를 사용할 경우 쿼리에 최소한 WHERE $ timeFilter가 있어야 한다. 또한 group by time과 집계 함수 항상 있어야 하며, 그렇지 않을 경우 InfluxDB가 수십만 개의 데이터를 반환할 수 있기 때문에 브라우저가 죽을 수 도 있다.

  • Alias patterns

ALIAS BY 행에서 아래와 같이 패턴을 적용할 수 있다. 

                          $m - measurement name으로 대체(replace)된다

                          $measurement - measurement name으로 대체된다

                          $col - column name 대체됨

                          $tag_exampletag - exampletag의 값으로 대체된다. Syntax 는 $tag_yourTagName ($tag_ 으로 시작해야 함). 

  • Templating

메트릭 쿼리에서 server, application 등 항목을 하드 코딩하는 대신 변수를 사용할 수 있다. 변수는 Dashboard 상단에  Dropdown 박스에서 볼 수 있다. Templating 기능에 대한 상세 내용 참고

  • Query variable

변수를 Query type으로 생성하면 InfluxDB exploration (메타 데이터) query를 작성할 수 있다. 예를 들어, templating 변수의 query를 아래와 같이 작성하면 hostname 태그의 모든 값을 가진 변수를 생성할 수 있다.

SHOW TAG VALUES WITH KEY = "hostname"

Nested 변수도 사용할 수 있다. 예를 들어, region란 또 다른 변수를 사용하여 현재 선택된 region에 대한 호스트 값만 가진 hostname 변수를 아래와 같이 생성할 수 있다.

SHOW TAG VALUES WITH KEY = "hostname"  WHERE region =~ /$region/
  • Using variables in queries

변수를 사용하기 위한 2가지 syntax가 있다.

$<varname> 예:

SELECT mean("value") FROM "logins" WHERE "hostname" =~ /^$host$/ AND $timeFilter GROUP BY time($__interval), "hostname"

[[varname]] 예:

SELECT mean("value") FROM "logins" WHERE "hostname" =~ /^[[host]]$/ AND $timeFilter GROUP BY time($__interval), "hostname"

첫 번째 syntax은 사용하는데 더 간단하긴 하지만 단어 중간에 변수를 사용할 수 없다. Multi-value 또는 Include all value 옵션들이 활성화되 있으면 Grafana는 라벨을 일반 텍스트에서 정규식 가능한 문자열로 변환한다. 그래서 = 대신 ~=을 사용해야한다.

Axes

Axes 탭은 Y, X 축에 대한 display 속성을 설정한다.

  • Left Y / Right Y

             Show - Y을 표시여부

             Unit - Y값 표시 단위

             Scale - Y값에 대한 scale. (default은 Linear)

             Y-Min - Y의 최소 값. (default은 Auto)

             Y-Max - Y의 최대 값. (default은 Auto)

             Decimals - Y 값에 대한 소수의 개수(number of decimals)를 입력 (default은 Auto).

             Label - Y 축 라벨 (default은 null)

  • X-Axis

            Show - 축 표시여부를 설정할수 있다.

  Mode - 아래 3가지 옵션이 있다.

             Time - 기본 옵션이며 X 축은 시간을 나타내며 데이터는 초, 분 등 시간으로 grouping 된다.

             Series - 데이터가 시간이 아닌 series으로 grouping 된다.

            Histogram - 그래프를 histogram으로 변환한다. Histogram은 숫자를 범위(range)로 grouping하는 일종의 막대 차트이며, 버킷(buckets) 또는 빈 (bins)이라고하기도 한다.
막대가 길수록 더 많은 데이터가 해당 범위에 있음을 나타낸다. 히스토그램과 버킷에 대해서 여기에서 참고.

  • Y axes

              Align - Left Y 와 Right Y 축을 값으로 정렬한다 (기본값은 unchecked).

              Level - Align을 체크한 경우에만 사용 가능. 정렬에 사용할 값이며, Y = 0 (기본값 0)부터 시작한다.

Legend

  • Options 

              Show - 범례 표시여무를 설정

              Table - 범례를 table에 표시

              To the right - 범례를 패널 오른쪽에 표시

              Width - To the right 를 선택한 경우에만 활성화된다. 범례의 최소 너비(width) 값을 설정

  • Values 

   범례에 추가적인 정보를 표시 할 수 있다.

               Min - Metric query에서 return된 모든 값중 최소값 

               Max - Metric query에서 return된 모든 값중 최대 값

               Avg - Metric query에서 return된 모든 값의 평균

               Current - Metric query에서 return된 마지막 값

               Total - Metric query에서 return된 모든 값의 합계

               Decimal - 범례 값에 표시되는 소수의 개수(number of decimals)를 입력

  • Hide series

  메트릭 쿼리에서 오는 series 값에 따라 series을 숨길 수 있다.

             With only nulls - Value = null (기본값은 unchecked)

             With only zeros - Value = zero (기본값은 unchecked)

Display

Display에서 그래프의 시각적 속성을 설정한다.

  • Draw Modes

        Bars- 막대 차트로 값을 표시한다. 

        Lines - 값을 Line (선) 그래프로 표시한다.

        Points - 값을 point(점)으로 표시한다

  • Mode Options

        Fill - 그래프를 채울 색상 양 (기본값 1). 0은 그래프를 안 채움.

        Line width - 선 너비 (기본값 1).

        Staircase - 그래프를 계단 처럼 그린다.

        Points Radius - Draw Modes에서 Points가 선택된 경우 Point의 크기(size)를 조정한다.

  • Hover tooltip

        Mode - 특정 point에 mouse over 시 tooltip에 표시 할 series 개수를 설정한다. All series 또는 single (기본값은 All series).

        Sort order - Tooltip에서 series가 어떻게 정렬되는지 설정한다.  

  • Stacking and Null value 

여러 series 있는 경우 그룹으로 display 할 수 있다.

        Stack- 각 series는 다른 시리즈 위에 쌓이어서 표시된다.

        Percent - Stack가 체크된 경우에만 사용  가능하고, 각 시리즈는 모든 시리즈의 합계(total)에 대한 비율로 그려진다.

        Null value - Null 값을 어떻게 표시할지 설정

  • Series Overrides

이 섹션에서는 시리즈를 다른 시지즈과 다르게 렌더링 할 수 있도록 설정할 수 있다. 

Thresholds

한계점(threshold)을 사용하여 그래프에 임의의 선을 추가하여 그래프가 특정 값을 넘어갈 때를 쉽게 볼 수 있도록 해 준다. 

Time Range

Time range 탭에서는 현재 시간 범위를 무시하고 패널에 특정 시간을 재설정할 수 있다. 현재 시간 기준으로 또는 timeshift으로  설정 가능하다.

Singlestat

                                                                < 그림 : Singlestat panel 사용 예 >