Create Dashboard in Visualize
개요
Visualize에서 데이터를 조회하고 시각화할 수 있습니다.
InfluxQL과 Flux 모두 CloudHub Portal의 Visualize 메뉴를 활용하면 builder 또는 templates 사용하거나 쿼리를 수동으로 편집할 수 있습니다.
Query 결과의 시각화를 위해 Visualization의 Visualization Type 중에서 선택하여 사용할 수 있습니다.
InfluxQL를 활용한 데이터 조회
개요
InfluxQL은 InfluxDB의 데이터와 상호 작용하는 데 사용할 수 있는 SQL과 같은 쿼리 언어입니다. 자세한 자습서 및 참조 자료는 하단의 정보 패널을 참조합니다.
InfluxQL 학습 링크: https://docs.influxdata.com/influxdb/v1.7/query_language/
InfluxQL Query 작성
1단계 : Add a Query 버튼 클릭
2단계 : Graph 출력 위치 왼쪽 위에 Source 유형 선택 옆에 InfluxQL 탭 선택
3단계 : DB.RetentionPolicy에서 Database 클릭
선택한 Database의 Measurements가 출력됩니다.
(Database 목록은 Super Admin일 경우 전체가 보여지고, 그 외의 권한들은 자신이 속한 그룹과 맵핑된 DB목록만 보여집니다.)
4단계 : Measurements & Tags에서 Measurement 클릭
선택한 Measurement의 Tag Key가 하위로 펼쳐지고 선택한 Measurement의 Fields가 출력됩니다.
5단계 : Fields에서 시계열 데이터를 조회할 Field 선택
선택한 Field로 Query가 자동으로 완성됩니다.
Query 자동 완성시 Field의 Default Function은 mean입니다.
6단계 : Query Editor의 오른쪽 아래의 Submit Query 클릭
아래와 같이 입력한 Query의 대한 결과를 확인할 수 있습니다.
Visualization Type을 Table로 선택하면 아래와 같은 결과를 확인할 수 있습니다.
기타 자동 완성
GROUP BY
Query의 GROUP BY 정의 time가 선택한 값으로 자동 완성됩니다.COMPARE
선택한 Field 값을 현재 값과 Compare에서 선택한 시간의 이전 값을 비교할 수 있도록 데이터가 조회됩니다.FILL
FILL은 선택한 Field의 데이터가 없는 시간의 값을 어떤 형식으로 표시할지 정의합니다.
(참고 : InfluxQL Documents)
Metaquery Templates
Metaquery Templates은 InfluxDB의 Meta 정보를 조회 하도록 Metaquery를 자동으로 생성합니다.
1단계 : Query Editor의 오른쪽 아래에 MetaQuery Templates 클릭
2단계 : 사용할 Metaquery Templates를 선택 (예 : Show measurements 선택)
3단계 : “db_name” 에 조회할 Database 명을 입력 (예 : telegraf 입력)
4단계 : Submit Query 버튼 클릭
아래 이미지와 같이 “telegraf” Database의 Measurement가 조회됩니다.
Show Template Values
Query Editor의 오른쪽 아래의 “Show Template Values”를 클릭하면 아래와 같이 :databoardTime:, :interval: 의 값을 확인할 수 있습니다.
Flux를 활용한 데이터 조회
개요
Flux는 시계열 데이터를 쿼리, 분석 및 작업하기 위해 설계된 InfluxData의 새로운 기능적 데이터 스크립팅 언어입니다. 자세한 내용은 하단의 정보패널을 참조합니다.
Flux Script 작성
1단계 : Add a Query 버튼 클릭
2단계 : Graph 출력 위치 왼쪽 위에 Source 유형 선택 옆에 Flux탭 선택
3단계 : SCHEMA 에서 조회할 Script 입력
from(bucket: "telegraf/autogen")
|> range(start: -1h)
|> filter(fn: (r) =>
r._measurement == "cpu" and
r._field == "usage_system" and
r.cpu == "cpu-total")
|> aggregateWindow(every: 10000ms, fn: mean)
4단계 : Script 오른쪽 위의 Run Script 클릭
아래와 같이 입력한 Script에 대한 결과가 출력됩니다.
기타 기능
SCHEMA를 활용한 filter Script 추가
1단계 : SCHEMA에서 DATABASE 클릭
아래와 같이 선택한 Database의 MEASUREMENTS, TAG, FIELDS가 조회됩니다.
(Database 목록은 Super Admin일 경우 전체가 보여지고, 그 외의 권한들은 자신이 속한 그룹과 맵핑된 DB목록만 보여집니다.)
2단계 : MEASUREMENTS, TAG, FIELDS에서 추가할 filter에 마우스 오버 후 Add Filter 클릭
아래와 같이 클릭한 Add Filter에 관한 Script가 자동으로 추가됩니다.FLUX FUNCTIONS를 활용한 function Script 추가
- FLUX FUNCTIONS 마우스 오버시 아래와 같이 해당 FUNCTION의 Description, Arguments, Example 정보 창이 나타납니다.
- FLUX FUNCTIONS 에서 추가할 FUNCTION을 클릭하면 해당 FUNCTION이 Script Editor에 추가 됩니다.Script Wizard를 활용한 Script 작성
1단계 : Script Editor의 오른쪽 위의 Script Wizard 버튼을 클릭하거나 Script Editor 중간의 Script Wizard 버튼을 클릭
- 아래와 같이 Flux Script Wizard Popup이 실행됩니다.
2단계 : Bucket, Measurement, Measurement Fields, Function을 선택 후 Import Script 버튼 클릭
- 아래와 같이 Script Editor에 Script가 자동으로 생성됩니다.Row Data 확인
Flux Script를 작성할 때 각 함수는 함수에 따라 데이터를 처리하거나 변환합니다.
실제 데이터를 보고 모양을 확인하는 것이 도움이 될 수 있습니다.
Visualization 위의 View Row Data 토글은 Graph 형식의 데이터와 Table 형식으로 표시된 Row Data를 전환하여 확인할 수 있습니다.
Send to Dashboard
1단계 : Visualize 화면 오른쪽 위의 Send to Dashboard 버튼 클릭
2단계 : Target Dashboard(s) dropdown 에서 Send to a New Dashboard를 선택하거나 Cell을 내보낼 기존 Dashboard를 하나 이상 선택
3단계 : Cell Name를 입력하고 Send to a New Dashboard를 선택한 경우 Name new dashboard를 입력
4단계 : Send to Dashboard(s) 버튼 클릭
아래와 같이 Dashboard 메뉴에서 새로 생성한 Dashboard와 Cell을 확인할 수 있습니다.