Merge pull request #12893 from grafana/davkal/12889-explore-fix-rate-filter

Explore: Fix label filtering for rate queries
This commit is contained in:
Marcus Efraimsson 2018-08-21 10:37:38 +02:00 committed by GitHub
commit 6ace01fbed
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 2 additions and 1 deletions

View File

@ -39,7 +39,7 @@ export function addLabelToQuery(query: string, key: string, value: string): stri
// Add empty selector to bare metric name // Add empty selector to bare metric name
let previousWord; let previousWord;
query = query.replace(/(\w+)\b(?![\({=",])/g, (match, word, offset) => { query = query.replace(/(\w+)\b(?![\(\]{=",])/g, (match, word, offset) => {
// Check if inside a selector // Check if inside a selector
const nextSelectorStart = query.slice(offset).indexOf('{'); const nextSelectorStart = query.slice(offset).indexOf('{');
const nextSelectorEnd = query.slice(offset).indexOf('}'); const nextSelectorEnd = query.slice(offset).indexOf('}');

View File

@ -375,6 +375,7 @@ describe('PrometheusDatasource', () => {
expect(addLabelToQuery('foo{instance="my-host.com:9100"}', 'bar', 'baz')).toBe( expect(addLabelToQuery('foo{instance="my-host.com:9100"}', 'bar', 'baz')).toBe(
'foo{bar="baz",instance="my-host.com:9100"}' 'foo{bar="baz",instance="my-host.com:9100"}'
); );
expect(addLabelToQuery('rate(metric[1m])', 'foo', 'bar')).toBe('rate(metric{foo="bar"}[1m])');
}); });
}); });