如何获取EC2实例标记的值" Name"与博托?

时间:2016-06-24 22:42:33

标签: python amazon-ec2 boto

我正在使用实例ID工作。我可以获取标签,但我无法弄清楚如何过滤实例ID和标签" Name"或索引并返回名为" Name"

的标签的值

我最终抓住所有标签并迭代它们,直到找到我想要的那个,这可能是正确的。

 tags = conn.get_all_tags({'resource-id': instance_id})
  for tag in tags:
    if 'Name' in tag.name:
      name = tag.value

2 个答案:

答案 0 :(得分:2)

你有更好的方法:

conn.get_all_images(filters={'tag-key': 'Name'. 'resource-id': instance_id})

答案 1 :(得分:0)

我认为你做这件事的方式很好。你总是可以把它作为一个抽象包装在一个函数调用中:

def get_instance_tag(all_tags, tag_name):
  for tag in all_tags:
    if tag_name == tag.name:
      return tag.value

  return None

name = get_instance_tag(conn.get_all_tags({'resource-id': instance_id}), 'Name')

请注意,if tag_name == tag.name:if tag_name in tag.name:更准确。