mirror of
https://github.com/fluxcd/flagger.git
synced 2026-04-15 06:57:34 +00:00
52 lines
1.2 KiB
Go
52 lines
1.2 KiB
Go
package metrics
|
|
|
|
import (
|
|
"testing"
|
|
)
|
|
|
|
func Test_EnvoySuccessRateQueryRender(t *testing.T) {
|
|
meta := struct {
|
|
Name string
|
|
Namespace string
|
|
Interval string
|
|
}{
|
|
"podinfo",
|
|
"default",
|
|
"1m",
|
|
}
|
|
|
|
query, err := render(meta, envoySuccessRateQuery)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
expected := `sum(rate(envoy_cluster_upstream_rq{kubernetes_namespace="default",kubernetes_pod_name=~"podinfo-[0-9a-zA-Z]+(-[0-9a-zA-Z]+)",envoy_response_code!~"5.*"}[1m])) / sum(rate(envoy_cluster_upstream_rq{kubernetes_namespace="default",kubernetes_pod_name=~"podinfo-[0-9a-zA-Z]+(-[0-9a-zA-Z]+)"}[1m])) * 100`
|
|
|
|
if query != expected {
|
|
t.Errorf("\nGot %s \nWanted %s", query, expected)
|
|
}
|
|
}
|
|
|
|
func Test_EnvoyRequestDurationQueryRender(t *testing.T) {
|
|
meta := struct {
|
|
Name string
|
|
Namespace string
|
|
Interval string
|
|
}{
|
|
"podinfo",
|
|
"default",
|
|
"1m",
|
|
}
|
|
|
|
query, err := render(meta, envoyRequestDurationQuery)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
expected := `histogram_quantile(0.99, sum(rate(envoy_cluster_upstream_rq_time_bucket{kubernetes_namespace="default",kubernetes_pod_name=~"podinfo-[0-9a-zA-Z]+(-[0-9a-zA-Z]+)"}[1m])) by (le))`
|
|
|
|
if query != expected {
|
|
t.Errorf("\nGot %s \nWanted %s", query, expected)
|
|
}
|
|
}
|