Commit 1b32ff57 by Marcus Efraimsson Committed by GitHub

Merge pull request #13609 from Yukinoshita-Yukino/master

elasticsearch: fix no limit size in terms aggregation for alerting queries
parents 974eddee 18dfdc4f
...@@ -171,6 +171,10 @@ func addTermsAgg(aggBuilder es.AggBuilder, bucketAgg *BucketAgg, metrics []*Metr ...@@ -171,6 +171,10 @@ func addTermsAgg(aggBuilder es.AggBuilder, bucketAgg *BucketAgg, metrics []*Metr
} else { } else {
a.Size = 500 a.Size = 500
} }
if a.Size == 0 {
a.Size = 500
}
if minDocCount, err := bucketAgg.Settings.Get("min_doc_count").Int(); err == nil { if minDocCount, err := bucketAgg.Settings.Get("min_doc_count").Int(); err == nil {
a.MinDocCount = &minDocCount a.MinDocCount = &minDocCount
} }
......
...@@ -60,7 +60,7 @@ func TestExecuteTimeSeriesQuery(t *testing.T) { ...@@ -60,7 +60,7 @@ func TestExecuteTimeSeriesQuery(t *testing.T) {
_, err := executeTsdbQuery(c, `{ _, err := executeTsdbQuery(c, `{
"timeField": "@timestamp", "timeField": "@timestamp",
"bucketAggs": [ "bucketAggs": [
{ "type": "terms", "field": "@host", "id": "2" }, { "type": "terms", "field": "@host", "id": "2", "settings": { "size": "0", "order": "asc" } },
{ "type": "date_histogram", "field": "@timestamp", "id": "3" } { "type": "date_histogram", "field": "@timestamp", "id": "3" }
], ],
"metrics": [{"type": "count", "id": "1" }] "metrics": [{"type": "count", "id": "1" }]
...@@ -69,7 +69,9 @@ func TestExecuteTimeSeriesQuery(t *testing.T) { ...@@ -69,7 +69,9 @@ func TestExecuteTimeSeriesQuery(t *testing.T) {
sr := c.multisearchRequests[0].Requests[0] sr := c.multisearchRequests[0].Requests[0]
firstLevel := sr.Aggs[0] firstLevel := sr.Aggs[0]
So(firstLevel.Key, ShouldEqual, "2") So(firstLevel.Key, ShouldEqual, "2")
So(firstLevel.Aggregation.Aggregation.(*es.TermsAggregation).Field, ShouldEqual, "@host") termsAgg := firstLevel.Aggregation.Aggregation.(*es.TermsAggregation)
So(termsAgg.Field, ShouldEqual, "@host")
So(termsAgg.Size, ShouldEqual, 500)
secondLevel := firstLevel.Aggregation.Aggs[0] secondLevel := firstLevel.Aggregation.Aggs[0]
So(secondLevel.Key, ShouldEqual, "3") So(secondLevel.Key, ShouldEqual, "3")
So(secondLevel.Aggregation.Aggregation.(*es.DateHistogramAgg).Field, ShouldEqual, "@timestamp") So(secondLevel.Aggregation.Aggregation.(*es.DateHistogramAgg).Field, ShouldEqual, "@timestamp")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment