|
|
|
@ -113,15 +113,22 @@ func (rp *responseParser) processBuckets(aggs map[string]interface{}, target *Qu |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
for k, v := range esAgg.Get("buckets").MustMap() { |
|
|
|
|
bucket := simplejson.NewFromAny(v) |
|
|
|
|
buckets := esAgg.Get("buckets").MustMap() |
|
|
|
|
bucketKeys := make([]string, 0) |
|
|
|
|
for k := range buckets { |
|
|
|
|
bucketKeys = append(bucketKeys, k) |
|
|
|
|
} |
|
|
|
|
sort.Strings(bucketKeys) |
|
|
|
|
|
|
|
|
|
for _, bucketKey := range bucketKeys { |
|
|
|
|
bucket := simplejson.NewFromAny(buckets[bucketKey]) |
|
|
|
|
newProps := make(map[string]string, 0) |
|
|
|
|
|
|
|
|
|
for k, v := range props { |
|
|
|
|
newProps[k] = v |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
newProps["filter"] = k |
|
|
|
|
newProps["filter"] = bucketKey |
|
|
|
|
|
|
|
|
|
err = rp.processBuckets(bucket.MustMap(), target, series, table, newProps, depth+1) |
|
|
|
|
if err != nil { |
|
|
|
|