目标是构建一个Elasticsearch索引,其中仅包含相关文档组中的最新文档,以跟踪某些监视计数器和状态的当前状态。
我已经构建了一个简单的Elasticsearch聚合查询
{
"size": 0,
"aggs": {
"group_by_monitor": {
"terms": {
"field": "monitor_name"
},
"aggs": {
"get_latest": {
"top_hits": {
"size": 1,
"sort": [
{
"timestamp": {
"order": "desc"
}
}
]
}
}
}
}
}
}
它将相关文档分组到桶中,并为每个桶选择最新的文档。
以下是我完成这项工作的不同想法:
hits
字段,无法处理聚合结果:聚合查询可能的输入ES插件!是否有一种相当复杂的方法来完成这一任务?
发布于 2017-02-06 10:45:22
编辑logstash.conf
文件如下
input {
elasticsearch {
hosts => "localhost"
index => "source_index_name"
type =>"index_type"
query => '{Query}'
size => 500
scroll => "5m"
docinfo => true
}
}
output {
elasticsearch {
index => "target_index_name"
document_id => "%{[@metadata][_id]}"
}
}
https://stackoverflow.com/questions/36505459
复制相似问题