1日にいくつかのイベントの累積合計をプロットしたいと思います。 cumulative sum aggregationは、私がドキュメントで与えられた例を再利用しようとしているように思われる。cumulative_sumを以前の集計で使用する方法は?
最初の集約は
{
"aggs": {
"vulns_day" : {
"date_histogram" :{
"field": "HOST_START_iso",
"interval": "day"
}
}
}
}
は、そのような私は、
{
"aggs": {
"vulns_day" : {
"date_histogram" :{
"field": "HOST_START_iso",
"interval": "day"
}
},
"aggs": {
"vulns_cumulated": {
"cumulative_sum": {
"buckets_path": "doc_count"
}
}
}
}
}
を経由して上記doc_count
の累積和を照会したい
(...)
{
"key_as_string": "2016-09-08T00:00:00.000Z",
"key": 1473292800000,
"doc_count": 76330
},
{
"key_as_string": "2016-09-09T00:00:00.000Z",
"key": 1473379200000,
"doc_count": 37712
},
(...)
などの返信を与え、次のクエリを正常に動作しますそれはエラーを与える:
"reason": {
"type": "search_parse_exception",
"reason": "Could not find aggregator type [vulns_cumulated] in [aggs]",
bucket_path
は合計する要素を指し、累積集計の例は特定の中間合計を作成しましたが、合計する項目はありません(doc_count
の横)。私は解決策を見つけた
{
"aggs": {
"vulns_day": {
"date_histogram": {
"field": "HOST_START_iso",
"interval": "day"
},
"aggs": {
"document_count": {
"value_count": {
"field": "HOST_START_iso"
}
},
"vulns_cumulated": {
"cumulative_sum": {
"buckets_path": "document_count"
}
}
}
}
}
}
ありがとう、どちらも動作しません。最初のもの(2番目の 'aggs'は' date_histogram'と同じレベルにあります)は ''パス[doc_count]に対して集計が見つかりませんでした」を返し、2番目の '累計集計[vulns_cumulated]はヒストグラムまたは日付ヒストグラムを親として持たなければなりません' – WoJ
私のクエリを更新します。私はそれが動作することは知りませんが、私は与えられた情報に従って作成しようとします。 https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-pipeline-cumulative-sum-aggregation.html#search-aggregations-pipeline-cumulative-sum-aggregation thisをチェックすることもできますページ。私は、あなたはdoc_countの値を取得するためにvalue_count集計を使用することができますと思います。しかし私は私のローカルマシン上の例ではありませんでした。私は調べようとするだけです。 – hkulekci