我在Elasticsearch 5.1.1中创建了一个映射eventlog
。我成功添加了它,但是在其下添加数据时,我得到了原因Illegal_argument_exception
的{{1}}。获取索引的结果是unknown setting [index._id]
我的映射是:
yellow open eventlog sX9BYIcOQLSKoJQcbn1uxg 5 1 0 0 795b 795b
我正在使用
添加数据{
"mappings" : {
"_default_" : {
"properties" : {
"datetime" : {"type": "date"},
"ip" : {"type": "ip"},
"country" : { "type" : "keyword" },
"state" : { "type" : "keyword" },
"city" : { "type" : "keyword" }
}
}
}
}
如果我不包含curl -u elastic:changeme -XPUT 'http://localhost:8200/eventlog' -d '{"index":{"_id":1}}
{"datetime":"2016-03-31T12:10:11Z","ip":"100.40.135.29","country":"US","state":"NY","city":"Highland"}';
行,我会{"index":{"_id":1}}
Illegal_argument_exception
,原因为unknown setting [index.apiKey]
。
答案 0 :(得分:0)
将命令行中的数据作为字符串发送出现问题。将数据保存在JSON
文件中并将其作为binary
发送解决了这个问题。正确的命令是:
curl -u elastic:changeme -XPUT 'http://localhost:8200/eventlog/_bulk?pretty' --data-binary @eventlogs.json