gpt4 book ai didi

elasticsearch - Elasticsearch术语聚合和带有时间戳的范围

转载 作者:行者123 更新时间:2023-12-03 00:32:18 25 4
gpt4 key购买 nike

我正在尝试计算按用户代理分组的日志数。

这就是我所拥有的。

GET /myindex/_search
{
"size": 30,
"stored_fields": ["req.headers.user-agent.keyword"],
"aggs": {
"group_by_userAgent": {
"terms": {
"field": "req.headers.user-agent.keyword"
}
}
}
}

我想添加“查询最近15分钟”功能。我尝试添加“范围”查询,但最终出现以下查询,该查询不起作用。
GET /myindex/_search
{
"size": 30,
"stored_fields": ["req.headers.user-agent.keyword"],


"aggs": {

"group_by_userAgent": {
"terms": {
"field": "req.headers.user-agent.keyword"
},
"range": {
"timestamp": {
"gt": "now-15m"
}
}
}
}
}

如何使用“now-x15min”语法查询具有范围的术语聚合?

最佳答案

range应该放在查询部分,而不是aggs。时间范围是好的

我认为您正在寻找的是前30个用户代理存储桶中的文档数,即产生最多日志的前30个用户代理

GET /myindex/_search
{
"size": 0,
"query": {
"range": {
"@timestamp": {
"gt": "now-15m"
}
}
},
"aggs": {
"group_by_userAgent": {
"terms": {
"field": "req.headers.user-agent.keyword",
"size": 30
}
}
}
}

关于elasticsearch - Elasticsearch术语聚合和带有时间戳的范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55176030/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com