我想使用Boto3生成一个EC2列表以及一组两个日期时间之间的状态更改(挂起,运行,关闭,终止等)。我的理解是,即使EC2不再存在,Config服务也会保留EC2的历史记录。我查看了this文档,但是我很难理解要使用哪些函数来完成手头的任务。
谢谢
答案 0 :(得分:0)
假设您已经配置了 AWS Config规则来跟踪ec2-instance状态,这种方法将满足您的需求。
1)使用list_discovered_resources API获取ec2-instances列表。如果要包含, includeDeletedResources 设置为 True
在回复中删除了资源。
response = client.list_discovered_resources(
resourceType='AWS::EC2::Instance',
limit=100,
includeDeletedResources=True,
nextToken='string'
)
解析响应并存储 resource-id
。
2)将每个 resource_id
传递给get_resource_config_history API。
response = client.get_resource_config_history(
resourceType='AWS::EC2::Instance',
resourceId='i-0123af12345be162h5', // Enter your EC2 instance id here
laterTime=datetime(2018, 1, 7), // Enter end date. default is current date.
earlierTime=datetime(2018, 1, 1), // Enter start date
chronologicalOrder='Reverse'|'Forward',
limit=100,
nextToken='string'
)
您可以解析响应并获取状态更改,ec2实例经历了相应的时间段。