Amazon web services AWS boto3带状态的EC2配置服务列表
我想使用Boto3生成一个EC2列表,以及两个日期时间之间的状态更改(挂起、运行、关闭、终止等)。我的理解是,即使EC2不再存在,配置服务也会维护EC2的历史记录。我已经看过了文档,但是我很难理解为了完成手头的任务应该使用哪些函数Amazon web services AWS boto3带状态的EC2配置服务列表,amazon-web-services,amazon-ec2,service,config,boto3,Amazon Web Services,Amazon Ec2,Service,Config,Boto3,我想使用Boto3生成一个EC2列表,以及两个日期时间之间的状态更改(挂起、运行、关闭、终止等)。我的理解是,即使EC2不再存在,配置服务也会维护EC2的历史记录。我已经看过了文档,但是我很难理解为了完成手头的任务应该使用哪些函数 谢谢假设您已经配置了AWS配置规则来跟踪ec2实例状态,这种方法将满足您的需要 1) 使用API获取ec2实例列表。如果要在响应中包括已删除的资源,请确保includeDeletedResources设置为True response = client.list_dis
谢谢假设您已经配置了AWS配置规则来跟踪ec2实例状态,这种方法将满足您的需要 1) 使用API获取ec2实例列表。如果要在响应中包括已删除的资源,请确保includeDeletedResources设置为
True
response = client.list_discovered_resources(
resourceType='AWS::EC2::Instance',
limit=100,
includeDeletedResources=True,
nextToken='string'
)
解析响应并存储资源id
2) 将每个资源\u id
传递给API
您可以解析响应并获取状态更改,ec2实例在相应的时间段内经历了这些更改。感谢您提供了详细的响应。您有关于如何在AWS配置中跟踪ec2实例状态的简单说明吗?如何做到这一点似乎并不明显。当我运行代码时,我的输出是聚合计数。。。我想查看EC2s的资源ID。如何显示EC2的资源ID?当调用
list\u discovered\u resources
API时,在响应中查找resourceIdentifiers
标记,它是一个列表。这将依次具有resourceName、resourceId、resourceType和resourceDeletionTime等属性。您可以循环响应并获取resourceId。它不是聚合。我把最后一句话的那一部分弄错了。很抱歉,如果没有看到您的代码,您将无法完全理解。如果您试图聚合每个ec2实例的状态,我认为您需要从您自己的自定义python逻辑处理它。我刚才提到了可以使用哪种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'
)