fix: passing correct httpClient, do not use DefaultClients (#3319)
most of our deployments use custom certificates, using DefaultClient makes it virtually impossible to make share URL feature work. this PR fixes this behavior in the implementation. Bonus: re-use transports inside console, will add more changes to take custom transport inputs in subsequent PR.
This commit is contained in:
@@ -994,8 +994,6 @@ func unmarshalPrometheus(ctx context.Context, httpClnt *http.Client, endpoint st
|
||||
}
|
||||
|
||||
func testPrometheusURL(ctx context.Context, url string) bool {
|
||||
clientIP := utils.ClientIPFromContext(ctx)
|
||||
httpClnt := GetConsoleHTTPClient(url, clientIP)
|
||||
req, err := http.NewRequestWithContext(ctx, http.MethodGet, url+"/-/healthy", nil)
|
||||
if err != nil {
|
||||
ErrorWithContext(ctx, fmt.Errorf("error Building Request: (%v)", err))
|
||||
@@ -1003,11 +1001,13 @@ func testPrometheusURL(ctx context.Context, url string) bool {
|
||||
}
|
||||
|
||||
prometheusBearer := getPrometheusAuthToken()
|
||||
|
||||
if prometheusBearer != "" {
|
||||
req.Header.Add("Authorization", fmt.Sprintf("Bearer %s", prometheusBearer))
|
||||
}
|
||||
|
||||
clientIP := utils.ClientIPFromContext(ctx)
|
||||
httpClnt := GetConsoleHTTPClient(clientIP)
|
||||
|
||||
response, err := httpClnt.Do(req)
|
||||
if err != nil {
|
||||
ErrorWithContext(ctx, fmt.Errorf("default Prometheus URL not reachable, trying root testing: (%v)", err))
|
||||
@@ -1050,7 +1050,7 @@ func getWidgetDetails(ctx context.Context, prometheusURL string, selector string
|
||||
return nil, ErrorWithContext(ctx, errors.New("prometheus URL is unreachable"))
|
||||
}
|
||||
clientIP := utils.ClientIPFromContext(ctx)
|
||||
httpClnt := GetConsoleHTTPClient(prometheusURL, clientIP)
|
||||
httpClnt := GetConsoleHTTPClient(clientIP)
|
||||
|
||||
labelResultsCh := make(chan LabelResults)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user