2016-02-03 4 views
1

У меня есть ES 2.2.0 и я пытаюсьElasticsearch: Curl не работает

curl -XPOST "http://localhost:9200" -d @jnk.json 

, но я получаю

Warning: Couldn't read data from file "jnk.json", this makes an empty POST. 
No handler found for uri [/] and method [POST] 

вот содержимое файла jnk.json

PUT junktest 
{ 
    "mappings": { 
    "test": {"properties": { 
     "DocumentID": { 
      "type": "string" 
     }, 
     "Tags":{ 
      "type" : "string", 
      "index" : "not_analyzed" 
     }, 
     "Summary": { 
      "type": "string", 
      "index" : "not_analyzed" 
     }, 
     "Status": { 
      "type": "string", 
      "index" : "not_analyzed" 
     }, 
     "Location": { 
      "type": "string", 
      "index" : "not_analyzed" 
     }, 
     "Error": { 
      "type": "string", 
      "index" : "not_analyzed" 
     }, 
     "Author": { 
      "type": "string", 
      "index" : "not_analyzed" 
     }, 
     "Sector": { 
      "type": "string", 
      "index" : "not_analyzed" 
     } 
     "Created Date": { 
      "type": "date", 
      "format": "yyyy-MM-dd" 
     } 
     } 
    } 
    } 
} 

POST /junktest/test/ 
{ 

      "DocumentID":"555661", 
      "Tags":["A","B","C","D"], 
      "Summary":"Summary Text", 
      "Status":"Review", 
      "Location":"HDFS", 
      "Error":"None", 
      "Author":"Poi KLj", 
      "Sector":"Energy", 
      "Created Date":"2013-04-23" 
} 

POST /junktest/test/ 
{ 

      "DocumentID":"555662", 
      "Tags":["B","C","D"], 
      "Summary":"Summary Text", 
      "Status":"Review", 
      "Location":"HDFS", 
      "Error":"None", 
      "Author":"Abc Mnb", 
      "Sector":"Energy", 
      "Created Date":"2013-05-23" 
} 

поэтому я создаю сопоставление, а затем отправляю один документ. Что я делаю не так?

я получаю тот же результат для -XPUT

Edit

спасибо большое @Bahaaldine Azarmi! там была недостающая запятая и я был в состоянии создать отображение отдельно :), но я попробовал насыпную команду, как

curl -XPOST "http://localhost:9200/_bulk" --data-binary @post.json 

согласно API, и он дал мне ошибку

{"error":{"root_cause":[{"type":"json_parse_exception","reason":"Unexpected char 
acter (':' (code 58)): expected a valid value (number, String, array, object, 't 
rue', 'false' or 'null')\n at [Source: [[email protected]; line: 1, column: 27]"}],"typ 
e":"json_parse_exception","reason":"Unexpected character (':' (code 58)): expect 
ed a valid value (number, String, array, object, 'true', 'false' or 'null')\n at 
[Source: [[email protected]; line: 1, column: 27]"},"status":500} 

вот мой post.json

{ "index" : { "_index" : "junktest", "_type" : "test"} } 
{ 

      "DocumentID":"555661", 
      "Tags":["A","B","C","D"], 
      "Summary":"Summary Text", 
      "Status":"Review", 
      "Location":"HDFS", 
      "Error":"None", 
      "Author":"Poi KLj", 
      "Sector":"Energy", 
      "Created Date":"2013-04-23" 
} 

Есть ли что-то не так с моим синтаксисом? который : персонаж - не место?

Фиксированные

разрывы строки не допускаются в массе апи, поскольку они рассматриваются в качестве разделителей. Таким образом, правильный формат файла

{"index":{"_index":"junktest","_type":"test"}} 
{"DocumentID":"555661","Tags":["A","B","C","D"],"Summary":"Summary Text","Status":"Review","Location":"HDFS","Error":"None","Author":"Poi KLj","Sector":"Energy","Created Date":"2013-04-23"} 

входной файл должен заканчиваться переводом строки

ответ

3

Ну эти запросы Синтаксисы необходимо скопировать и вставить в Sense (https://www.elastic.co/blog/found-sense-a-cool-json-aware-interface-to-elasticsearch). С помощью Sense вы сможете выполнять каждый запрос последовательно.

Если вы хотите использовать локон, а затем разделить работу на два вызова:

Используйте следующие действия для создания вашего отображения

curl -XPUT "http://localhost:9200/junktest" -d @mapping.json 

Кстати, ваше отображение отсутствует запятая здесь

}, 
"Created Date": { 

Затем сделайте второй вызов, использовать насыпной API для индексирования ваших объектов JSON в одном запросе, например здесь:

https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-bulk.html

+0

спасибо большое! см. редактирование – AbtPst

Смежные вопросы