mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
datatrails: fix: only show datatrails link for timeseries dashboard panels (#84942)
fix: only show datatrails link for timeseries dashboard panels
This commit is contained in:
parent
d2dd15e223
commit
a2795f1291
@ -12,13 +12,24 @@ import { MetricScene } from '../MetricScene';
|
|||||||
import { DataTrailEmbedded, DataTrailEmbeddedState } from './DataTrailEmbedded';
|
import { DataTrailEmbedded, DataTrailEmbeddedState } from './DataTrailEmbedded';
|
||||||
import { SceneDrawerAsScene, launchSceneDrawerInGlobalModal } from './SceneDrawer';
|
import { SceneDrawerAsScene, launchSceneDrawerInGlobalModal } from './SceneDrawer';
|
||||||
import { QueryMetric, getQueryMetrics } from './getQueryMetrics';
|
import { QueryMetric, getQueryMetrics } from './getQueryMetrics';
|
||||||
import { createAdHocFilters, getQueryMetricLabel, getQueryRunner, getTimeRangeFromDashboard } from './utils';
|
import {
|
||||||
|
createAdHocFilters,
|
||||||
|
getPanelType,
|
||||||
|
getQueryMetricLabel,
|
||||||
|
getQueryRunner,
|
||||||
|
getTimeRangeFromDashboard,
|
||||||
|
} from './utils';
|
||||||
|
|
||||||
export function addDataTrailPanelAction(
|
export function addDataTrailPanelAction(
|
||||||
dashboard: DashboardScene | DashboardModel,
|
dashboard: DashboardScene | DashboardModel,
|
||||||
panel: VizPanel | PanelModel,
|
panel: VizPanel | PanelModel,
|
||||||
items: PanelMenuItem[]
|
items: PanelMenuItem[]
|
||||||
) {
|
) {
|
||||||
|
const panelType = getPanelType(panel);
|
||||||
|
if (panelType !== 'timeseries') {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
const queryRunner = getQueryRunner(panel);
|
const queryRunner = getQueryRunner(panel);
|
||||||
if (!queryRunner) {
|
if (!queryRunner) {
|
||||||
return;
|
return;
|
||||||
|
@ -43,3 +43,10 @@ export function getQueryMetricLabel({ metric, labelFilters }: QueryMetric) {
|
|||||||
export function createAdHocFilters(labels: QueryBuilderLabelFilter[]) {
|
export function createAdHocFilters(labels: QueryBuilderLabelFilter[]) {
|
||||||
return labels?.map((label) => ({ key: label.label, value: label.value, operator: label.op }));
|
return labels?.map((label) => ({ key: label.label, value: label.value, operator: label.op }));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function getPanelType(panel: VizPanel | PanelModel) {
|
||||||
|
if (panel instanceof VizPanel) {
|
||||||
|
return panel.state.pluginId;
|
||||||
|
}
|
||||||
|
return panel.type;
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user