我有一个要求,以便从Cloudwatch警报生成SNS主题,然后SNS触发Lambda函数来更改EC2实例的标签。
以下是我到目前为止的代码,但我正在记录关键错误。 Ca有人请帮忙。我想我不确定如何从此处的消息中获取实例ID。
import json
import boto3
def lambda_handler(event, context):
snsClient = boto3.client('sns')
message = json.loads(event['Records'][0]['Sns']['Message'])
instance_id = message['Trigger']['Dimensions'][0]
tagResc = boto3.client('ec2')
ret = tagResc.delete_tags(
Resources=[instance_id],
Tags=[{'Key': 'Availability' }]
);
答案 0 :(得分:0)
message['Trigger']['Dimensions'][0]
返回:
{u'name': u'InstanceId', u'value': u'i-abcd94b3583afdc'}
因此您需要使用:
instance_id = message['Trigger']['Dimensions'][0]['value']