diff --git a/pkg/tsdb/azuremonitor/applicationinsights-datasource.go b/pkg/tsdb/azuremonitor/applicationinsights-datasource.go index 495d43ce5be..6129e345419 100644 --- a/pkg/tsdb/azuremonitor/applicationinsights-datasource.go +++ b/pkg/tsdb/azuremonitor/applicationinsights-datasource.go @@ -242,7 +242,10 @@ func (e *ApplicationInsightsDatasource) createRequest(ctx context.Context, dsInf appInsightsAppID := dsInfo.JsonData.Get("appInsightsAppId").MustString() proxyPass := fmt.Sprintf("%s/v1/apps/%s", pluginRouteName, appInsightsAppID) - u, _ := url.Parse(dsInfo.Url) + u, err := url.Parse(dsInfo.Url) + if err != nil { + return nil, err + } u.Path = path.Join(u.Path, fmt.Sprintf("/v1/apps/%s", appInsightsAppID)) req, err := http.NewRequest(http.MethodGet, u.String(), nil) diff --git a/pkg/tsdb/azuremonitor/azure-log-analytics-datasource.go b/pkg/tsdb/azuremonitor/azure-log-analytics-datasource.go index 34c8be12aea..f6a3947aa72 100644 --- a/pkg/tsdb/azuremonitor/azure-log-analytics-datasource.go +++ b/pkg/tsdb/azuremonitor/azure-log-analytics-datasource.go @@ -184,7 +184,10 @@ func (e *AzureLogAnalyticsDatasource) executeQuery(ctx context.Context, query *A } func (e *AzureLogAnalyticsDatasource) createRequest(ctx context.Context, dsInfo *models.DataSource) (*http.Request, error) { - u, _ := url.Parse(dsInfo.Url) + u, err := url.Parse(dsInfo.Url) + if err != nil { + return nil, err + } u.Path = path.Join(u.Path, "render") req, err := http.NewRequest(http.MethodGet, u.String(), nil) diff --git a/pkg/tsdb/azuremonitor/azuremonitor-datasource.go b/pkg/tsdb/azuremonitor/azuremonitor-datasource.go index 96ff54bbe30..0382b3d72da 100644 --- a/pkg/tsdb/azuremonitor/azuremonitor-datasource.go +++ b/pkg/tsdb/azuremonitor/azuremonitor-datasource.go @@ -221,7 +221,10 @@ func (e *AzureMonitorDatasource) createRequest(ctx context.Context, dsInfo *mode cloudName := dsInfo.JsonData.Get("cloudName").MustString("azuremonitor") proxyPass := fmt.Sprintf("%s/subscriptions", cloudName) - u, _ := url.Parse(dsInfo.Url) + u, err := url.Parse(dsInfo.Url) + if err != nil { + return nil, err + } u.Path = path.Join(u.Path, "render") req, err := http.NewRequest(http.MethodGet, u.String(), nil) diff --git a/pkg/tsdb/elasticsearch/client/client.go b/pkg/tsdb/elasticsearch/client/client.go index 103ef452a4b..300aae8ef22 100644 --- a/pkg/tsdb/elasticsearch/client/client.go +++ b/pkg/tsdb/elasticsearch/client/client.go @@ -154,12 +154,14 @@ func (c *baseClientImpl) encodeBatchRequests(requests []*multiRequest) ([]byte, } func (c *baseClientImpl) executeRequest(method, uriPath, uriQuery string, body []byte) (*response, error) { - u, _ := url.Parse(c.ds.Url) + u, err := url.Parse(c.ds.Url) + if err != nil { + return nil, err + } u.Path = path.Join(u.Path, uriPath) u.RawQuery = uriQuery var req *http.Request - var err error if method == http.MethodPost { req, err = http.NewRequest(http.MethodPost, u.String(), bytes.NewBuffer(body)) } else { diff --git a/pkg/tsdb/graphite/graphite.go b/pkg/tsdb/graphite/graphite.go index 82d6d34337a..7a01f99b84a 100644 --- a/pkg/tsdb/graphite/graphite.go +++ b/pkg/tsdb/graphite/graphite.go @@ -154,7 +154,10 @@ func (e *GraphiteExecutor) parseResponse(res *http.Response) ([]TargetResponseDT } func (e *GraphiteExecutor) createRequest(dsInfo *models.DataSource, data url.Values) (*http.Request, error) { - u, _ := url.Parse(dsInfo.Url) + u, err := url.Parse(dsInfo.Url) + if err != nil { + return nil, err + } u.Path = path.Join(u.Path, "render") req, err := http.NewRequest(http.MethodPost, u.String(), strings.NewReader(data.Encode())) diff --git a/pkg/tsdb/opentsdb/opentsdb.go b/pkg/tsdb/opentsdb/opentsdb.go index 372f0ef6784..5ca633a576f 100644 --- a/pkg/tsdb/opentsdb/opentsdb.go +++ b/pkg/tsdb/opentsdb/opentsdb.go @@ -79,7 +79,10 @@ func (e *OpenTsdbExecutor) Query(ctx context.Context, dsInfo *models.DataSource, } func (e *OpenTsdbExecutor) createRequest(dsInfo *models.DataSource, data OpenTsdbQuery) (*http.Request, error) { - u, _ := url.Parse(dsInfo.Url) + u, err := url.Parse(dsInfo.Url) + if err != nil { + return nil, err + } u.Path = path.Join(u.Path, "api/query") postData, err := json.Marshal(data) diff --git a/pkg/tsdb/stackdriver/stackdriver.go b/pkg/tsdb/stackdriver/stackdriver.go index d106e3f0e2b..149414b293e 100644 --- a/pkg/tsdb/stackdriver/stackdriver.go +++ b/pkg/tsdb/stackdriver/stackdriver.go @@ -656,7 +656,10 @@ func calcBucketBound(bucketOptions stackdriverBucketOptions, n int) string { } func (e *StackdriverExecutor) createRequest(ctx context.Context, dsInfo *models.DataSource, query *stackdriverQuery, proxyPass string) (*http.Request, error) { - u, _ := url.Parse(dsInfo.Url) + u, err := url.Parse(dsInfo.Url) + if err != nil { + return nil, err + } u.Path = path.Join(u.Path, "render") req, err := http.NewRequest(http.MethodGet, "https://monitoring.googleapis.com/", nil)