1
以下のクエリで、指定された時間範囲(15:00から16:00まで)の平均エントリ数がわかります。指定された時間範囲の平均エントリ数を検索するクエリ
このクエリは正しく動作していません。どのように時間範囲(日付なし)を指定し、この範囲の平均エントリ数を見つけることができますか?
POST /myindex/_search
{
"size": 0,
"query": {
"bool": {
"filter": [
{"term": {"EventId": "11"}},
{"term": {"EventType": "Type1"}}
]
}
},
"aggs": {
"range": {
"date_range": {
"field": "Datetime",
"ranges": [
{
"from": "16:00-1H/H",
"to": "16:00/H"
}
]
}
}
}
}
移動平均を使用しますか?どうやって?
私はこれを試しましたが、誰かがこのクエリを完了するのを手伝ってもらえると感謝しています。 "value_count" : { "field" : "EventHour"}
がエントリ数をカウントする正しい方法であるかどうかはわかりません。どのように私は適切にこのクエリで時間の範囲を追加することができます?:
POST /myindex/_search
{
"size": 0,
"query": {
"bool": {
"filter": [
{"term": {"EventId": "11"}},
{"term": {"EventType": "Type1"}},
{
"script": {
"script": "doc.date.date.getHourOfDay() >= min && doc.date.date.getHourOfDay() <= max",
"params": {
"min": 15,
"max": 16
}
}
}
]
}
},
"aggs": {
"hourly_intensity": {
"date_histogram": {
"field": "Datetime",
"interval": "hour"
},
"aggs": {
"count_of_events": {
"value_count" : { "field" : "EventHour"}
}
}
},
"hourly_avg_count": {
"avg_bucket": {
"buckets_path": "hourly_intensity>count_of_events"
}
}
}
}