Fix: alias functions in Services query type (#2078)

This commit is contained in:
Zoltán Bedi
2025-09-17 20:22:12 +02:00
committed by GitHub
parent b95859cf52
commit e76741b453
4 changed files with 492 additions and 6 deletions

View File

@@ -1,11 +1,11 @@
import { DataFrame, FieldType, TIME_SERIES_TIME_FIELD_NAME } from '@grafana/data';
import { getTemplateSrv } from '@grafana/runtime';
import _ from 'lodash';
import * as utils from './utils';
import { getTemplateSrv } from '@grafana/runtime';
import { DataFrame, FieldType, TIME_SERIES_VALUE_FIELD_NAME } from '@grafana/data';
function setAlias(alias: string, frame: DataFrame) {
if (frame.fields?.length <= 2) {
const valueField = frame.fields.find((f) => f.name === TIME_SERIES_VALUE_FIELD_NAME);
const valueField = frame.fields.find((f) => f.name !== TIME_SERIES_TIME_FIELD_NAME);
if (valueField?.config?.custom?.scopedVars) {
alias = getTemplateSrv().replace(alias, valueField?.config?.custom?.scopedVars);
}
@@ -38,7 +38,7 @@ function replaceAlias(regexp: string, newAlias: string, frame: DataFrame) {
if (frame.fields?.length <= 2) {
let alias = frame.name.replace(pattern, newAlias);
const valueField = frame.fields.find((f) => f.name === TIME_SERIES_VALUE_FIELD_NAME);
const valueField = frame.fields.find((f) => f.name !== TIME_SERIES_TIME_FIELD_NAME);
if (valueField?.state?.scopedVars) {
alias = getTemplateSrv().replace(alias, valueField?.state?.scopedVars);
}
@@ -63,7 +63,7 @@ function replaceAlias(regexp: string, newAlias: string, frame: DataFrame) {
function setAliasByRegex(alias: string, frame: DataFrame) {
if (frame.fields?.length <= 2) {
const valueField = frame.fields.find((f) => f.name === TIME_SERIES_VALUE_FIELD_NAME);
const valueField = frame.fields.find((f) => f.name !== TIME_SERIES_TIME_FIELD_NAME);
try {
if (valueField) {
valueField.config.displayNameFromDS = extractText(valueField.config?.displayNameFromDS, alias);