- 首先,获取AWS Config的查询结果。
import boto3
client = boto3.client('config')
query = "SELECT accountId, resourceType \
WHERE resourceType = 'AWS::EC2::Instance'"
response = client.select_resource_config(Expression=query)
- 然后,使用Python的collections模块中的defaultdict方法按group by的字段进行分组。
from collections import defaultdict
group_by_field = 'accountId' # group by字段,可以根据需要更改
grouped_data = defaultdict(list)
for item in response['Results']:
grouped_data[item[group_by_field]].append(item)
- 最后,对分组后的数据进行处理或打印。
for group_name, group_data in grouped_data.items():
## do something with group_data, such as printing or processing
print(f"Group Name: {group_name}")
for item in group_data:
print(f"\t{item['resourceType']} - {item['resourceId']}")