Traces: Fix for multiple $__tags in trace to metrics (#59641)

* Fix interpolation of multiple  in query

* Add another  to test case
This commit is contained in:
Joey Tawadrous
2022-12-14 09:51:43 +00:00
committed by GitHub
parent bb2ecb1468
commit bf8814749e
2 changed files with 3 additions and 3 deletions

View File

@@ -512,7 +512,7 @@ describe('createSpanLinkFactory', () => {
splitOpenFn, splitOpenFn,
traceToMetricsOptions: { traceToMetricsOptions: {
datasourceUid: 'prom1Uid', datasourceUid: 'prom1Uid',
queries: [{ name: 'Named Query', query: 'metric{$__tags}[5m]' }], queries: [{ name: 'Named Query', query: 'metric{$__tags, $__tags}[5m]' }],
tags: [ tags: [
{ key: 'job', value: '' }, { key: 'job', value: '' },
{ key: 'k8s.pod', value: 'pod' }, { key: 'k8s.pod', value: 'pod' },
@@ -535,7 +535,7 @@ describe('createSpanLinkFactory', () => {
expect(links).toBeDefined(); expect(links).toBeDefined();
expect(links!.metricLinks![0]!.href).toBe( expect(links!.metricLinks![0]!.href).toBe(
`/explore?left=${encodeURIComponent( `/explore?left=${encodeURIComponent(
'{"range":{"from":"2020-10-14T01:00:00.000Z","to":"2020-10-14T01:00:01.000Z"},"datasource":"prom1Uid","queries":[{"expr":"metric{job=\\"tns/app\\", pod=\\"sample-pod\\"}[5m]","refId":"A"}],"panelsState":{}}' '{"range":{"from":"2020-10-14T01:00:00.000Z","to":"2020-10-14T01:00:01.000Z"},"datasource":"prom1Uid","queries":[{"expr":"metric{job=\\"tns/app\\", pod=\\"sample-pod\\", job=\\"tns/app\\", pod=\\"sample-pod\\"}[5m]","refId":"A"}],"panelsState":{}}'
)}` )}`
); );
}); });

View File

@@ -455,7 +455,7 @@ function buildMetricsQuery(query: TraceToMetricQuery, tags: Array<KeyValue<strin
}, [] as string[]); }, [] as string[]);
const labelsQuery = labels?.join(', '); const labelsQuery = labels?.join(', ');
expr = expr.replace('$__tags', labelsQuery); expr = expr.replace(/\$__tags/g, labelsQuery);
} }
return expr; return expr;