diff --git a/public/app/features/alerting/unified/components/rule-viewer/RuleViewerVisualization.tsx b/public/app/features/alerting/unified/components/rule-viewer/RuleViewerVisualization.tsx index 4739f2e526b..a8cebb0116a 100644 --- a/public/app/features/alerting/unified/components/rule-viewer/RuleViewerVisualization.tsx +++ b/public/app/features/alerting/unified/components/rule-viewer/RuleViewerVisualization.tsx @@ -28,7 +28,11 @@ export function RuleViewerVisualization(props: RuleViewerVisualizationProps): JS const { data, query, onChangeQuery } = props; const defaultPanel = isExpressionQuery(query.model) ? TABLE : TIMESERIES; const [panel, setPanel] = useState(defaultPanel); - const dsSettings = getDataSourceSrv().getInstanceSettings(query.datasourceUid); + let uid = query.datasourceUid; + if (isExpressionQuery(query.model)) { + uid = query.model.datasource?.type ?? query.datasourceUid; + } + const dsSettings = getDataSourceSrv().getInstanceSettings(uid); const relativeTimeRange = query.relativeTimeRange; const [options, setOptions] = useState({ frameIndex: 0,