Ruby Elasticsearch API: 返回索引的最新条目
Ruby Elasticsearch API: Returning the latest entry to an index
我在索引映射中启用了“_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
我已经尝试了上述代码的几种变体,但似乎没有 return 最新的条目。我在网上找不到很多使用 Ruby elasticsearch API 语法的示例,所以非常感谢任何帮助!
如果有办法 return 最新条目而不使用“_timestamp”字段,我也愿意尝试!
我终于找到了正确的语法:
json = client.search index: 'index',
type: 'type',
body: { query: { match_all: {} }, size: 1, sort: [ { _timestamp: { order: "desc"} } ] }
我在索引映射中启用了“_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
我已经尝试了上述代码的几种变体,但似乎没有 return 最新的条目。我在网上找不到很多使用 Ruby elasticsearch API 语法的示例,所以非常感谢任何帮助!
如果有办法 return 最新条目而不使用“_timestamp”字段,我也愿意尝试!
我终于找到了正确的语法:
json = client.search index: 'index',
type: 'type',
body: { query: { match_all: {} }, size: 1, sort: [ { _timestamp: { order: "desc"} } ] }