diff --git a/public/app/features/correlations/utils.ts b/public/app/features/correlations/utils.ts index 71f4f5732b95..1e363577ef18 100644 --- a/public/app/features/correlations/utils.ts +++ b/public/app/features/correlations/utils.ts @@ -1,5 +1,7 @@ import { DataFrame, DataLinkConfigOrigin } from '@grafana/data'; +import { formatValueName } from '../explore/PrometheusListView/ItemLabels'; + import { CorrelationData } from './useCorrelations'; type DataFrameRefIdToDataSourceUid = Record; @@ -21,7 +23,14 @@ export const attachCorrelationsToDataFrames = ( if (!frameRefId) { return; } - const dataSourceUid = dataFrameRefIdToDataSourceUid[frameRefId]; + let dataSourceUid = dataFrameRefIdToDataSourceUid[frameRefId]; + + // rawPrometheus queries append a value to refId to a separate dataframe for the table view + if (dataSourceUid === undefined && dataFrame.meta?.preferredVisualisationType === 'rawPrometheus') { + const formattedRefID = formatValueName(frameRefId); + dataSourceUid = dataFrameRefIdToDataSourceUid[formattedRefID]; + } + const sourceCorrelations = correlations.filter((correlation) => correlation.source.uid === dataSourceUid); decorateDataFrameWithInternalDataLinks(dataFrame, sourceCorrelations); }); diff --git a/public/app/features/explore/PrometheusListView/ItemLabels.tsx b/public/app/features/explore/PrometheusListView/ItemLabels.tsx index b5db12afe938..289de9e2994e 100644 --- a/public/app/features/explore/PrometheusListView/ItemLabels.tsx +++ b/public/app/features/explore/PrometheusListView/ItemLabels.tsx @@ -24,7 +24,7 @@ const getItemLabelsStyles = (theme: GrafanaTheme2, expanded: boolean) => { }; }; -const formatValueName = (name: string): string => { +export const formatValueName = (name: string): string => { if (name.includes(InstantQueryRefIdIndex)) { return name.replace(InstantQueryRefIdIndex, ''); }