2018년 9월 16일 일요일

Logstash 연동 에러(Limit of total fields)

로드스태시 연동 과정에서 발생한 에러. 엘라스틱서치에서 하나의 인덱스가 가질 수 있는 필드 개수에 제한이 있나 보다. 기본적으로 허용된 필드 개수는 1,000개. 필드 분류를 어떻게 했길래 개수가 1,000개를 넘어가지?


필드가 너무 많으면 관리나 성능 측면에서 안 좋을 것 같은데(..) 그래도 제한을 풀어보자. 다음은 기본 1,000개인 필드 개수를 2.000개로 늘려주는 명령어. 'Dev Tools' 메뉴에서 실행하면 됨.

PUT logstash-gto_10102829/_settings
{
    "index.mapping.total_fields.limit": 2000
}

다음은 실행 결과.


해당 인덱스 매핑을 확인하면 필드 개수 제한이 2,000개로 늘어났음을 알 수 있다.


참고로 셋팅 변경 후, 다시 연동할 때 로그 중복 저장을 피하려면, 기존에 저장된 로그를 지워야 한다. 다음은 특정 인덱스 데이터 전체를 삭제하는 명령어.

POST logstash-gto_10102829/_delete_by_query
{
  "query": {
    "match_all": {}
  }
}


댓글 없음:

댓글 쓰기

크리에이티브 커먼즈 라이선스