Prometheus: Fix passing of custom params when running queries (#42728)

* Prometheus: Fix passing of custom params

* Remove prints
This commit is contained in:
Ivana Huckova
2021-12-03 16:28:05 +01:00
committed by GitHub
parent 8722c19cc3
commit 21fe78302b
2 changed files with 18 additions and 3 deletions
@@ -11,14 +11,25 @@ import (
const (
customQueryParametersMiddlewareName = "prom-custom-query-parameters"
customQueryParametersKey = "customQueryParameters"
grafanaDataKey = "grafanaData"
)
func customQueryParametersMiddleware(logger log.Logger) sdkhttpclient.Middleware {
return sdkhttpclient.NamedMiddlewareFunc(customQueryParametersMiddlewareName, func(opts sdkhttpclient.Options, next http.RoundTripper) http.RoundTripper {
customQueryParamsVal, exists := opts.CustomOptions[customQueryParametersKey]
grafanaData, exists := opts.CustomOptions[grafanaDataKey]
if !exists {
return next
}
data, ok := grafanaData.(map[string]interface{})
if !ok {
return next
}
customQueryParamsVal, exists := data[customQueryParametersKey]
if !exists {
return next
}
customQueryParams, ok := customQueryParamsVal.(string)
if !ok || customQueryParams == "" {
return next