선수로 산다, 때론 좋은 코치로

[elastic] How to change kibana index 본문

개발 관련/개발 일반

[elastic] How to change kibana index

godsman 2019. 11. 5. 19:12

[elastic] How to change kibana index

키바나의 Visualize에서 사용한 인덱스를 변경하는 방법

Kibanad에서 Visualize를 만들고 대시보드에서 잘 활용하다 보면 인덱스 변경이 필요한 경우가 있습니다. 대표적인 경우는 하나의 인덱스를 지정하여 사용하고 있다가 날짜별로 인덱스를 사용하려고 할 때 발생합니다. ids-event -> ids-event-* 처럼

그런데 Visualize에는 인덱스를 변경하는 기능이 없습니다. 비주얼라이즈가 몇 개 없을 경우에는 삭제하고 다시 만들곤 했는데, 하나의 비주얼라이즈를 여러 곳의 대시보드에서 사용하다 보니 삭제하고 다시 만드는게 귀찮아졌습니다. 매우 불편하지만 방법이 있습니다. 실제로 적용했을 때는 필터를 사용해서 더욱 복잡했습니다.

방법은 비주얼라이즈에 포함되어 있는 인덱스 패턴의 ID를 변경하는 것입니다. 인덱스 이름이 아니라 ID를 변경하는 것이다 보니 우선 인덱스별로 ID를 찾아야 하고, 기존 ID를 찾은 ID로 변경하면 됩니다.

인덱스 이름으로 ID 찾기

인덱스의 ID를 알아낸다. Kibana Dev Tools 에서 아래와 같이 인덱스 패턴 구하는 쿼리를 전송합니다.

GET .kibana/_search
{
  "_source": ["index-pattern.title"],
  "query": {
    "term": {
      "type": "index-pattern"
    }
  }
}

test_condition 인덱스의 id는 98de7610-9eeb-11e9-8e6f-41bae0abcf20 입니다.

{
  "took" : 12,
  "timed_out" : false,
  "_shards" : {
    "total" : 1,
    "successful" : 1,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : {
      "value" : 7,
      "relation" : "eq"
    },
    "max_score" : 2.700615,
    "hits" : [
      {
        "_index" : ".kibana_3",
        "_type" : "_doc",
        "_id" : "index-pattern:98de7610-9eeb-11e9-8e6f-41bae0abcf20",
        "_score" : 2.700615,
        "_source" : {
          "index-pattern" : {
            "title" : "test_condition*"
          }
        }
      },

Inspect Visualize

Saved Objects 에서 인덱스를 변경하려고 하는 Visualize를 Inspect 합니다.

index ID 변경

references 에서 index ID를 변경합니다.

[
  {
    "name": "kibanaSavedObjectMeta.searchSourceJSON.index",
    "type": "index-pattern",
    "id": "8ad8d4c0-9eeb-11e9-8e6f-41bae0abcf20"
  },
  {
    "name": "kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index",
    "type": "index-pattern",
    "id": "8ad8d4c0-9eeb-11e9-8e6f-41bae0abcf20"
  }
]

저장

저장하고 확인합니다.

Comments