Change builtin metrics to work with Istio >= 1.5

This commit is contained in:
stefanprodan
2020-06-17 10:13:29 +03:00
parent 6f65f6096d
commit e8ca5f270b
4 changed files with 10 additions and 10 deletions

View File

@@ -36,7 +36,7 @@ var istioQueries = map[string]string{
0.99,
sum(
rate(
istio_request_duration_seconds_bucket{
istio_request_duration_milliseconds_bucket{
reporter="destination",
destination_workload_namespace="{{ namespace }}",
destination_workload=~"{{ target }}"
@@ -75,6 +75,6 @@ func (ob *IstioObserver) GetRequestDuration(model flaggerv1.MetricTemplateModel)
return 0, fmt.Errorf("running query failed: %w", err)
}
ms := time.Duration(int64(value*1000)) * time.Millisecond
ms := time.Duration(int64(value)) * time.Millisecond
return ms, nil
}

View File

@@ -49,13 +49,13 @@ func TestIstioObserver_GetRequestSuccessRate(t *testing.T) {
}
func TestIstioObserver_GetRequestDuration(t *testing.T) {
expected := ` histogram_quantile( 0.99, sum( rate( istio_request_duration_seconds_bucket{ reporter="destination", destination_workload_namespace="default", destination_workload=~"podinfo" }[1m] ) ) by (le) )`
expected := ` histogram_quantile( 0.99, sum( rate( istio_request_duration_milliseconds_bucket{ reporter="destination", destination_workload_namespace="default", destination_workload=~"podinfo" }[1m] ) ) by (le) )`
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
promql := r.URL.Query()["query"][0]
assert.Equal(t, expected, promql)
json := `{"status":"success","data":{"resultType":"vector","result":[{"metric":{},"value":[1,"0.100"]}]}}`
json := `{"status":"success","data":{"resultType":"vector","result":[{"metric":{},"value":[1,"100"]}]}}`
w.Write([]byte(json))
}))
defer ts.Close()