import boto from .ec2 import instance_id def instance_tags_for_current_host(): """ Returns the datadog style tags for the active host """ return instance_tags([instance_id()]) def instance_tags(instance_ids): """ Returns datadog style tags for the specified instances """ ec2 = boto.connect_ec2() tags = set() for res in ec2.get_all_instances(instance_ids): for instance in res.instances: ec2_tags = instance.tags tags.add('instance_id:' + instance.id) if 'group' in ec2_tags: tags.add('fab-group:' + ec2_tags['group']) if 'environment' in ec2_tags: tags.add('fab-environment:' + ec2_tags['environment']) if 'variant' in ec2_tags: tags.add('fab-variant:' + ec2_tags['variant']) return list(tags)