[컴] Kibana 에서 ES의 scripted field 사용하기

키바나 / 일레스틱 서치 / 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

  1. kibana 에서 scripted fileds 의 사용예제: https://www.elastic.co/blog/using-painless-kibana-scripted-fields
  2. Painless Scripting Language | Elasticsearch Guide [5.0] | Elastic
  3. ES에서 histogram data 를 얻는 방법: http://damianhagge.com/blog/2017/08/10/elasticsearch-histogram/

댓글 없음:

댓글 쓰기