【发布时间】:2020-01-10 10:55:15
【问题描述】:
我正在从指标中读取数据,并希望在最新日期时间读取选定的数据。我使用聚合来获得第一名,但由于查询给出的结果与最新的不匹配而在某处失败。可能是我缺少什么地方。这是我的最终查询
var elasticResponse = elasticClient.Search<object>(s => s
.Aggregations(ag => ag
.Terms("cpu_aggs", sa => sa.Field("system.cpu.total.pct").Size(1))
.Terms("memory_aggs", sa => sa.Field("system.memory.actual.used.pct").Size(1))
.Terms("diskio_aggs", sa => sa.Field("docker.diskio.summary.bytes").Size(1))
.Terms("load_aggs", sa => sa.Field("system.load.5").Size(1))
)
.Sort(so => so.Descending("@timestamp"))
);
请帮助找到正确的解决方案。
更新的解决方案是
.Terms(currentMemoryUsageInPercent, sa => sa.Field("system.memory.actual.used.pct").Size(1).Order(o => o.Descending("max_timestamp"))
.Aggregations(agg => agg.Max("max_timestamp", mx => mx.Field(greoupByFieldName))))
【问题讨论】:
标签: elasticsearch dsl querydsl