diff --git a/public/app/plugins/datasource/cloudwatch/migration.test.ts b/public/app/plugins/datasource/cloudwatch/migration.test.ts index 58a4eacf5d7..227036202fe 100644 --- a/public/app/plugins/datasource/cloudwatch/migration.test.ts +++ b/public/app/plugins/datasource/cloudwatch/migration.test.ts @@ -223,6 +223,15 @@ describe('migration', () => { expect(query.dimensionFilters).toBe('{"InstanceId":"$instance_id"}'); }); }); + describe('when resource_arns query is used', () => { + it('should parse the query', () => { + const query = migrateVariableQuery('resource_arns(us-east-1,rds:db,{"environment":["$environment"]})'); + expect(query.queryType).toBe(VariableQueryType.ResourceArns); + expect(query.region).toBe('us-east-1'); + expect(query.resourceType).toBe('rds:db'); + expect(query.tags).toBe('{"environment":["$environment"]}'); + }); + }); }); }); }); diff --git a/public/app/plugins/datasource/cloudwatch/migrations.ts b/public/app/plugins/datasource/cloudwatch/migrations.ts index 726f5926c02..0430946fb0c 100644 --- a/public/app/plugins/datasource/cloudwatch/migrations.ts +++ b/public/app/plugins/datasource/cloudwatch/migrations.ts @@ -149,7 +149,7 @@ export function migrateVariableQuery(rawQuery: string | VariableQuery): Variable newQuery.queryType = VariableQueryType.ResourceArns; newQuery.region = resourceARNsQuery[1]; newQuery.resourceType = resourceARNsQuery[2]; - newQuery.tags = JSON.parse(resourceARNsQuery[3]) || ''; + newQuery.tags = resourceARNsQuery[3] || ''; return newQuery; }