graphite: use a query when testing data source

Using a query (POST /render) request instead of GET /metrics/find to better
mimic an actual request for rendering a panel in a dashboard. The POST /render
request will add at least a custom http header which can be problematic when
using direct access mode since it will trigger a CORS prerequest check. By
doing this kind of query when testing the data source possible CORS issues
can be detected there instead of later when trying to use the data source
in a dashboard.
This commit is contained in:
Marcus Efraimsson
2018-04-05 18:11:35 +02:00
parent 166778b32a
commit 4cc80efee6

View File

@@ -453,7 +453,13 @@ export function GraphiteDatasource(instanceSettings, $q, backendSrv, templateSrv
};
this.testDatasource = function() {
return this.metricFindQuery('*').then(function() {
let query = {
panelId: 3,
rangeRaw: { from: 'now-1h', to: 'now' },
targets: [{ target: 'constantLine(100)' }],
maxDataPoints: 300,
};
return this.query(query).then(function() {
return { status: 'success', message: 'Data source is working' };
});
};