From 6c89bf53f273ccbd0117cd9644d77c81636567ae Mon Sep 17 00:00:00 2001 From: Joey Tawadrous <90795735+joey-grafana@users.noreply.github.com> Date: Mon, 18 Jul 2022 15:36:16 +0100 Subject: [PATCH] Tempo: Tempo/Prometheus links select ds in new tab (cmd + click) (#52319) * Set tempo/prom ds name when clicking trace links * Updated tests * Removed vars --- .../app/plugins/datasource/tempo/datasource.test.ts | 12 ++++++++++-- public/app/plugins/datasource/tempo/datasource.ts | 13 +++++++------ 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/public/app/plugins/datasource/tempo/datasource.test.ts b/public/app/plugins/datasource/tempo/datasource.test.ts index 704b408bea4..081f1c88a33 100644 --- a/public/app/plugins/datasource/tempo/datasource.test.ts +++ b/public/app/plugins/datasource/tempo/datasource.test.ts @@ -578,6 +578,14 @@ const backendSrvWithPrometheus = { } throw new Error('unexpected uid'); }, + getDataSourceSettingsByUid(uid: string) { + if (uid === 'prom') { + return { name: 'Prometheus' }; + } else if (uid === 'gdev-tempo') { + return { name: 'Tempo' }; + } + return ''; + }, }; function setupBackendSrv(frame: DataFrame) { @@ -598,7 +606,7 @@ function setupBackendSrv(frame: DataFrame) { const defaultSettings: DataSourceInstanceSettings = { id: 0, - uid: '0', + uid: 'gdev-tempo', type: 'tracing', name: 'tempo', access: 'proxy', @@ -777,7 +785,7 @@ const serviceGraphLinks = [ queryType: 'nativeSearch', serviceName: '${__data.fields[0]}', } as TempoQuery, - datasourceUid: 'tempo', + datasourceUid: 'gdev-tempo', datasourceName: 'Tempo', }, }, diff --git a/public/app/plugins/datasource/tempo/datasource.ts b/public/app/plugins/datasource/tempo/datasource.ts index 3fa28b7cd99..dc2640c2951 100644 --- a/public/app/plugins/datasource/tempo/datasource.ts +++ b/public/app/plugins/datasource/tempo/datasource.ts @@ -237,18 +237,19 @@ export class TempoDatasource extends DataSourceWithBackend rateQuery(options, result, dsId).pipe( - concatMap((result) => errorAndDurationQuery(options, result, dsId, this.name)) + concatMap((result) => errorAndDurationQuery(options, result, dsId, tempoDsUid)) ) ) ) ); } else { - subQueries.push(serviceMapQuery(options, dsId, this.name)); + subQueries.push(serviceMapQuery(options, dsId, tempoDsUid)); } } @@ -585,7 +586,7 @@ function makePromLink(title: string, expr: string, datasourceUid: string, instan instant: instant, } as PromQuery, datasourceUid, - datasourceName: 'Prometheus', + datasourceName: getDatasourceSrv().getDataSourceSettingsByUid(datasourceUid)?.name ?? '', }, }; } @@ -604,8 +605,8 @@ export function makeTempoLink(title: string, serviceName: string, spanName: stri title, internal: { query, - datasourceUid: datasourceUid, - datasourceName: 'Tempo', + datasourceUid, + datasourceName: getDatasourceSrv().getDataSourceSettingsByUid(datasourceUid)?.name ?? '', }, }; }