NodeGraph: Fix view traces query for edges (#105324)
* NodeGraph: Fix view traces query for edges * Updating tests
This commit is contained in:
@@ -864,7 +864,7 @@ describe('Tempo service graph view', () => {
|
||||
operator: '=',
|
||||
scope: 'resource',
|
||||
tag: 'service.name',
|
||||
value: 'my-service',
|
||||
value: 'my-target-service',
|
||||
valueType: 'string',
|
||||
},
|
||||
],
|
||||
@@ -961,7 +961,7 @@ describe('Tempo service graph view', () => {
|
||||
operator: '=',
|
||||
scope: 'resource',
|
||||
tag: 'service.namespace',
|
||||
value: 'my-namespace',
|
||||
value: 'my-target-namespace-service',
|
||||
valueType: 'string',
|
||||
},
|
||||
{
|
||||
@@ -969,7 +969,7 @@ describe('Tempo service graph view', () => {
|
||||
operator: '=',
|
||||
scope: 'resource',
|
||||
tag: 'service.name',
|
||||
value: 'my-service',
|
||||
value: 'my-target-name-service',
|
||||
valueType: 'string',
|
||||
},
|
||||
],
|
||||
@@ -1495,7 +1495,10 @@ const serviceGraphLinks = [
|
||||
|
||||
const replaceVariablesInstrumented = (variable: string): string => {
|
||||
const variables: Record<string, string> = {
|
||||
[`\${__data.fields.${NodeGraphDataFrameFieldNames.title}}`]: 'my-service',
|
||||
[`\${__data.fields.${NodeGraphDataFrameFieldNames.id}}`]: 'my-service',
|
||||
[`\${__data.fields.${NodeGraphDataFrameFieldNames.target}}`]: 'my-target-service',
|
||||
[`\${__data.fields.targetName}`]: 'my-target-name-service',
|
||||
[`\${__data.fields.targetNamespace}`]: 'my-target-namespace-service',
|
||||
[`\${__data.fields.${NodeGraphDataFrameFieldNames.subTitle}}`]: 'my-namespace',
|
||||
[`\${__data.fields.${NodeGraphDataFrameFieldNames.isInstrumented}}`]: 'true',
|
||||
};
|
||||
@@ -1504,7 +1507,7 @@ const replaceVariablesInstrumented = (variable: string): string => {
|
||||
|
||||
const replaceVariablesUninstrumented = (variable: string): string => {
|
||||
const variables: Record<string, string> = {
|
||||
[`\${__data.fields.${NodeGraphDataFrameFieldNames.title}}`]: 'my-service',
|
||||
[`\${__data.fields.${NodeGraphDataFrameFieldNames.id}}`]: 'my-service',
|
||||
[`\${__data.fields.${NodeGraphDataFrameFieldNames.subTitle}}`]: 'my-namespace',
|
||||
[`\${__data.fields.${NodeGraphDataFrameFieldNames.isInstrumented}}`]: 'false',
|
||||
};
|
||||
|
||||
@@ -1177,7 +1177,12 @@ export function getFieldConfig(
|
||||
datasourceUid,
|
||||
false
|
||||
),
|
||||
makeTempoLinkServiceMap('View traces', tempoDatasourceUid, !!namespaceFields?.targetNamespace),
|
||||
makeTempoLinkServiceMap(
|
||||
'View traces',
|
||||
namespaceFields !== undefined ? `\${${namespaceFields.targetNamespace}}` : '',
|
||||
`\${${targetField}}`,
|
||||
tempoDatasourceUid
|
||||
),
|
||||
],
|
||||
};
|
||||
}
|
||||
@@ -1234,8 +1239,9 @@ export function makeTempoLink(
|
||||
|
||||
function makeTempoLinkServiceMap(
|
||||
title: string,
|
||||
datasourceUid: string,
|
||||
includeNamespace: boolean
|
||||
serviceNamespaceVar: string | undefined,
|
||||
serviceNameVar: string,
|
||||
datasourceUid: string
|
||||
): DataLink<TempoQuery> {
|
||||
return {
|
||||
url: '',
|
||||
@@ -1244,11 +1250,8 @@ function makeTempoLinkServiceMap(
|
||||
datasourceUid,
|
||||
datasourceName: getDataSourceSrv().getInstanceSettings(datasourceUid)?.name ?? '',
|
||||
query: ({ replaceVariables, scopedVars }) => {
|
||||
const serviceName = replaceVariables?.(`\${__data.fields.${NodeGraphDataFrameFieldNames.title}}`, scopedVars);
|
||||
const serviceNamespace = replaceVariables?.(
|
||||
`\${__data.fields.${NodeGraphDataFrameFieldNames.subTitle}}`,
|
||||
scopedVars
|
||||
);
|
||||
const serviceName = replaceVariables?.(serviceNameVar, scopedVars);
|
||||
const serviceNamespace = serviceNamespaceVar ? replaceVariables?.(serviceNamespaceVar, scopedVars) : undefined;
|
||||
const isInstrumented =
|
||||
replaceVariables?.(`\${__data.fields.${NodeGraphDataFrameFieldNames.isInstrumented}}`, scopedVars) !==
|
||||
'false';
|
||||
@@ -1262,7 +1265,7 @@ function makeTempoLinkServiceMap(
|
||||
query.queryType = 'traceql';
|
||||
query.query = `{${filters}}`;
|
||||
} else {
|
||||
if (includeNamespace && serviceNamespace) {
|
||||
if (serviceNamespace) {
|
||||
query.filters.push({
|
||||
id: 'service-namespace',
|
||||
scope: TraceqlSearchScope.Resource,
|
||||
|
||||
Reference in New Issue
Block a user