Elasticsearch template를 일별 index 구성하기
데이터베이스/Elasticsearch

Elasticsearch template를 일별 index 구성하기

반응형

Elasticsearch를 이용해서 로그기록을 많이한다. 일별 로그성 인덱스를 자동으로 만들기 위해 template를 사용해서 구성하는 법을 정리해보자.

우선 매일 새롭게 생성될 index에 대한 template를 생성해보자.

template 생성


PUT _template/wedul_log_*
{
  "index_patterns": [
    "wedul_log_*"
  ],
  "mappings": {
    "_doc": {
      "dynamic": false,
      "properties": {
        "id": {
          "type": "integer"
        }
      }
    }
  }
}

생성한 템플릿이 잘 만들어졌는지 확인해보자.

확인
GET template/wedul_log*

그럼 이제 wedul_log라는 대표 인덱스를 생성해주고 template에 맞는 일자별 인덱스를 만들어보자.

PUT wedul_log
{
  "mappings": {
    "_doc": {
      "dynamic": false,
      "properties": {
        "id": {
          "type": "integer"
        }
      }
    }
  }
}

인덱스 생성이 완료되면 template에 맞게 데이터를 삽입해보자.

일별 데이터 추가

POST wedul_log_2019.06.12/_doc
{
	"id": 1
}

POST wedul_log_2019.06.13/_doc
{
	"id": 2
}

6월 12, 13일에 대한 로그 인덱스가 생겼고 document가 생성되었다.

이런식으로 일자별 인덱스를 자동으로 생성하게 할 수 있다.

여러 로그성 인덱스를 한번에 조회를 다음 명령어를 통해 할 수 있다.

GET wedul_log_2019.06.12,wedul_log_2019.06.13/_search
반응형