소스 검색

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.
Marcus Efraimsson 7 년 전
부모
커밋
4cc80efee6
1개의 변경된 파일7개의 추가작업 그리고 1개의 파일을 삭제
  1. 7 1
      public/app/plugins/datasource/graphite/datasource.ts

+ 7 - 1
public/app/plugins/datasource/graphite/datasource.ts

@@ -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' };
     });
   };