From 9d01b216f9132b13c8aca603fa0d847d487c3587 Mon Sep 17 00:00:00 2001 From: Marcus Efraimsson Date: Wed, 1 May 2019 17:23:47 +0200 Subject: [PATCH] prometheus: fix regression after adding support for tracing headers (#16829) This fixes a regression introduced by #16724 when datasource is configured to use HTTP method POST and testing the datasource which results in an 'options.headers is undefined'. Same error probably happens if datasource is configured to use basic auth and testing datasource. --- public/app/plugins/datasource/prometheus/datasource.ts | 1 + .../datasource/prometheus/specs/metric_find_query.test.ts | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/public/app/plugins/datasource/prometheus/datasource.ts b/public/app/plugins/datasource/prometheus/datasource.ts index 85c04b7c9fa..9ac535c089e 100644 --- a/public/app/plugins/datasource/prometheus/datasource.ts +++ b/public/app/plugins/datasource/prometheus/datasource.ts @@ -72,6 +72,7 @@ export class PrometheusDatasource implements DataSourceApi { options = _.defaults(options || {}, { url: this.url + url, method: this.httpMethod, + headers: {}, }); if (options.method === 'GET') { diff --git a/public/app/plugins/datasource/prometheus/specs/metric_find_query.test.ts b/public/app/plugins/datasource/prometheus/specs/metric_find_query.test.ts index 5e45f56303a..2ca7c978762 100644 --- a/public/app/plugins/datasource/prometheus/specs/metric_find_query.test.ts +++ b/public/app/plugins/datasource/prometheus/specs/metric_find_query.test.ts @@ -57,6 +57,7 @@ describe('PrometheusMetricFindQuery', () => { method: 'GET', url: 'proxied/api/v1/labels', silent: true, + headers: {}, }); }); @@ -75,6 +76,7 @@ describe('PrometheusMetricFindQuery', () => { method: 'GET', url: 'proxied/api/v1/label/resource/values', silent: true, + headers: {}, }); }); @@ -97,6 +99,7 @@ describe('PrometheusMetricFindQuery', () => { method: 'GET', url: `proxied/api/v1/series?match[]=metric&start=${raw.from.unix()}&end=${raw.to.unix()}`, silent: true, + headers: {}, }); }); @@ -121,6 +124,7 @@ describe('PrometheusMetricFindQuery', () => { 'metric{label1="foo", label2="bar", label3="baz"}' )}&start=${raw.from.unix()}&end=${raw.to.unix()}`, silent: true, + headers: {}, }); }); @@ -145,6 +149,7 @@ describe('PrometheusMetricFindQuery', () => { method: 'GET', url: `proxied/api/v1/series?match[]=metric&start=${raw.from.unix()}&end=${raw.to.unix()}`, silent: true, + headers: {}, }); }); @@ -163,6 +168,7 @@ describe('PrometheusMetricFindQuery', () => { method: 'GET', url: 'proxied/api/v1/label/__name__/values', silent: true, + headers: {}, }); }); @@ -190,6 +196,7 @@ describe('PrometheusMetricFindQuery', () => { method: 'GET', url: `proxied/api/v1/query?query=metric&time=${raw.to.unix()}`, requestId: undefined, + headers: {}, }); }); @@ -217,6 +224,7 @@ describe('PrometheusMetricFindQuery', () => { 'up{job="job1"}' )}&start=${raw.from.unix()}&end=${raw.to.unix()}`, silent: true, + headers: {}, }); }); });