feat(monitor): influxQuery add P95 reduce

This commit is contained in:
zhaoxiangchun
2021-01-14 10:50:56 +08:00
parent 09438f56dd
commit 1b71ba64b7
@@ -134,6 +134,20 @@ func (s *queryReducer) Reduce(series *tsdb.TimeSeries) (*float64, []string) {
if value > 0 {
allNull = false
}
case "P95":
var values []float64
for _, v := range series.Points {
if v.IsValid() {
allNull = false
values = append(values, v.Value())
}
}
if len(values) >= 1 {
sort.Float64s(values)
length := len(values)
index := math.Floor(float64(length) * 0.95)
value = values[int64(index)]
}
}
if allNull {