您可以使用AWS SDK中提供的AWS Cost Explorer API来实现获取每个单独资源的费用和使用情况的功能。以下是一个使用AWS SDK for Python(Boto3)的代码示例:
import boto3
def get_cost_and_usage(start_date, end_date):
# 创建 Cost Explorer 的客户端
ce_client = boto3.client('ce', region_name='us-east-1')
# 设置查询参数
query = {
'TimePeriod': {
'Start': start_date,
'End': end_date
},
'Granularity': 'DAILY',
'Metrics': ['AmortizedCost'],
'GroupBy': [],
'Filter': {
'Dimensions': {
'Key': 'USAGE_TYPE_GROUP',
'Values': ['EC2: Running Hours'] # 可以根据需要修改筛选条件
}
}
}
# 调用 get_cost_and_usage 函数获取资源费用和使用情况
response = ce_client.get_cost_and_usage(**query)
# 处理响应数据
results = []
for result_by_time in response['ResultsByTime']:
total_cost = result_by_time['Total']['AmortizedCost']['Amount']
total_usage = result_by_time['Total']['AmortizedCost']['Unit']
results.append((total_cost, total_usage))
return results
# 设置查询的起始日期和结束日期
start_date = '2022-01-01'
end_date = '2022-01-31'
# 调用函数获取费用和使用情况
cost_and_usage = get_cost_and_usage(start_date, end_date)
# 打印结果
for cost, usage in cost_and_usage:
print(f"费用: {cost} {usage}")
请注意,上述示例中的代码使用了AWS SDK for Python(Boto3),您需要先安装并配置好Boto3,以便能够与AWS服务进行交互。此外,您还需要根据您的实际需求修改查询参数中的筛选条件和其他参数。