From 42e516523f03cabc559e268bb054b61bf040eb58 Mon Sep 17 00:00:00 2001 From: Joey Tawadrous <90795735+joey-grafana@users.noreply.github.com> Date: Mon, 28 Feb 2022 10:22:10 +0000 Subject: [PATCH] InfluxDB: test datasource (#45636) * Test datasource * Remove core.explore check * Extract resused check to function * Update messages * Updated message --- .../plugins/datasource/influxdb/datasource.ts | 36 +++++++++++++++++-- 1 file changed, 33 insertions(+), 3 deletions(-) diff --git a/public/app/plugins/datasource/influxdb/datasource.ts b/public/app/plugins/datasource/influxdb/datasource.ts index ae483f9b057..a1956b3d4db 100644 --- a/public/app/plugins/datasource/influxdb/datasource.ts +++ b/public/app/plugins/datasource/influxdb/datasource.ts @@ -22,7 +22,6 @@ import { TIME_SERIES_TIME_FIELD_NAME, TIME_SERIES_VALUE_FIELD_NAME, TimeSeries, - CoreApp, } from '@grafana/data'; import InfluxSeries from './influx_series'; import InfluxQueryModel from './influx_query_model'; @@ -165,7 +164,7 @@ export default class InfluxDatasource extends DataSourceWithBackend { if (res.error) { @@ -449,7 +448,7 @@ export default class InfluxDatasource extends DataSourceWithBackend { - if (this.isFlux || (config.featureToggles.influxdbBackendMigration && this.access === 'proxy')) { + if (this.isFlux || this.isMigrationToggleOnAndIsAccessProxy()) { const target: InfluxQuery = { refId: 'metricFindQuery', query, @@ -554,6 +553,33 @@ export default class InfluxDatasource extends DataSourceWithBackend { + if (!res || !res.data || res.state !== LoadingState.Done) { + return { + status: 'error', + message: 'Error reading InfluxDB.', + }; + } + if (res.data?.length) { + return { status: 'success', message: 'Data source is working.' }; + } + return { + status: 'error', + message: 'Successfully connected to InfluxDB, but no tags found.', + }; + }) + .catch((err: any) => { + return { status: 'error', message: err.message }; + }); + } + const queryBuilder = new InfluxQueryBuilder({ measurement: '', tags: [] }, this.database); const query = queryBuilder.buildExploreQuery('RETENTION POLICIES'); @@ -700,4 +726,8 @@ export default class InfluxDatasource extends DataSourceWithBackend