키바나 / 일레스틱 서치 / es / elasticsearch
Kibana 에서 ES의 scripted field 사용하기
- Kibana Version: 6.2.4
Date Histogram 사용
- ES에서 histogram data 를 얻는 방법: http://damianhagge.com/blog/2017/08/10/elasticsearch-histogram/
위 link 에서 보면 알겠지만, ElasticSearch(ES) 에서 히스토그램을 통해서 특정구간으로 값을 잘라서 구할 수 있다. 예를 들면, ‘월단위’ 기간으로 잘라서, 그 ‘기간동안의 평균값’ 등을 구할 수 있다.
근데 만약 원하는 값이 Date type로 설정이 안되어 있다면, scripted field 를 통해서 Date type 으로 모양을 바꿔서 사용할 수 있다. 필자는 epoch milllisecond 값이 있었는데(my-field
라 하자), date 로 설정이 안되어 있어서, kibana 에서 ‘Date Histogram’ 을 사용할 수 없었다. 그래서 scripted field 로 date type 로 변경해서 사용했다.(이 데이터 field 를 my-scripted-field
라고 하자.)(Management > Index Pattern 을 이용)
주의할 점
주의할 점은 data 의 의미를 잘 파악해야 한다는 것이다. 위의 예제에서 내가 my-scripted-field
로 Date Histogram 을 이용해서 그래프를 만들었다. 그러면 그 my-scripted-field
범위에 있는 record(ES용어로는 document)의 개수가 y 에 표현된다. 그리고 이 히스토그램은 index 의 Time Filter field 의 범위안에 있는 값을 가져다가 만든 그래프이다. 그러니 전체범위에 대한 my-scripted-field
값이 아니라는 것을 주의하자.
scripted field 생성
See Also
- kibana 에서 scripted fileds 의 사용예제: https://www.elastic.co/blog/using-painless-kibana-scripted-fields
- Painless Scripting Language | Elasticsearch Guide [5.0] | Elastic
- ES에서 histogram data 를 얻는 방법: http://damianhagge.com/blog/2017/08/10/elasticsearch-histogram/
댓글 없음:
댓글 쓰기