인프런 커뮤니티 질문&답변

손민우 손님의 프로필 이미지
손민우 손

작성한 질문수

ELK 스택 (ElasticSearch, Logstash, Kibana) 으로 데이터 분석

엘라스틱서치 데이터 입력 조회 삭제 (GET, POST, PUT, DELETE)

현재 7버전 이용중인데 -XPOST 시 에러가 발생합니다.

작성

·

571

10

curl -XPOSt http://localhost:9200/classes/class/1/ -d '{"title" : "Algorithm", "professor" : "John"}' 입력 시 www-form-urlencoded is not supported status 406 에러가 발생합니다. 높은 버전에선 -H 'Content-Type: application/json' 을 추가해줘야 할듯합니다.

답변 3

5

저도 동일한 문제를 겪었는데, ES6.0 이후 부터 content-type을 정확히 기재해주어야 한다고 합니다.

https://www.elastic.co/kr/blog/strict-content-type-checking-for-elasticsearch-rest-requests

Starting from Elasticsearch 6.0, all REST requests that include a body must also provide the correct content-type for that body.

 

또한, bulk 인 경우는  -H 'Content-Type: application/x-ndjson' 옵션을 추가해서 해결하였습니다.

이 경우, 개행까지가 반드시 포함되는게 ndjson의 스펙인가 봅니다. 일부 dump 파일의 마지막 줄 개행이 없으면

에러가 나는 것을 확인하고 수정하였습니다.

 

2016년 자료라 일부 커멘드와 데이터를 수정하면서 이것저것 찾아보는 것도 나쁘지 않네요.

본 강의로 ELK의 개념을 잡는데 큰 도움이 되었습니다. 감사합니다.

 

 

2

8버전부터는 아래처럼 하도록 변경됨
curl -XPOST localhost:9200/classes/_doc/ -d '{"title" : "ElasticSearch", "professor" : "MinsukHeo"}' -H 'Content-Type: application/json'

2

curl -XPOST http://localhost:9200/classes/class/1/ -d'

{"title":"alal","professor":"john"}

' -H'Content-Type: application/json'

손민우 손님의 프로필 이미지
손민우 손

작성한 질문수

질문하기