我启用了" _timestamp"索引映射中的字段,我使用elasticsearch REST API成功检索到索引的最新条目。我使用的POST请求的主体如下所示:
{
"query": {
"match_all": {}
},
"size": "1",
"sort": [
{
"_timestamp": {
"order": "desc"
}
}
]
}
现在我试图将其转换为Ruby elasticsearch-api语法......这就是我到目前为止所做的:
client = Elasticsearch::Client.new host: 'blahblahblah:9200'
json = client.search index: 'index',
type: 'type',
body: { query: { match_all: {} }},
sort: '_timestamp',
size: 1
我已尝试过上述代码的几种变体,但似乎没有任何内容可以返回最新的条目。我无法使用Ruby elasticsearch API语法在线找到很多示例,因此非常感谢任何帮助!
如果有办法在不使用" _timestamp"的情况下返回最新条目我也很乐意尝试这个!
答案 0 :(得分:0)
我终于找到了正确的语法:
json = client.search index: 'index',
type: 'type',
body: { query: { match_all: {} }, size: 1, sort: [ { _timestamp: { order: "desc"} } ] }