Updated cloudwatch plugin to allow specific tag selection

Tags come back from AWS as a key value pair inside an array
This array is now converted to an object
Tags can be selected when using the 'ec2_instance_attribute' query
Example: `ec2_instance_attribute(us-east-1, Tags.Name, { "tag:Grafana": [ "true" ] })`
This commit is contained in:
Michael Ambrose 2017-05-05 16:22:03 -04:00
parent 01ff3bbe0a
commit 525da95f49

View File

@ -260,7 +260,17 @@ function (angular, _, moment, dateMath, kbn, templatingVariable, CloudWatchAnnot
return this.performEC2DescribeInstances(region, filters, null).then(function(result) {
var attributes = _.chain(result.Reservations)
.map(function(reservations) {
return _.map(reservations.Instances, targetAttributeName);
return _.map(reservations.Instances, function(instance) {
var tags = {};
_.each(instance.Tags, function(tag) {
tags[tag.Key] = tag.Value;
});
instance.Tags = tags;
return instance;
});
})
.map(function(instances) {
return _.map(instances, targetAttributeName);
})
.flatten().uniq().sortBy().value();
return transformSuggestData(attributes);