6

我正在尝试调用 AWS 的 get-cost-and-usage api 来生成每小时报告。但是,我在启用仅选择加入功能时遇到错误。

aws ce get-cost-and-usage --time-period '{"Start": "2020-06-10T00:00:00Z", "End": "2020-06-15T00:00:00Z"}' --granularity 'HOURLY' --metrics "AmortizedCost" "BlendedCost" "NetAmortizedCost" "NetUnblendedCost" "NormalizedUsageAmount" "UnblendedCost" "UsageQuantity" --group-by Type=DIMENSION,Key=SERVICE

错误信息:

调用 GetCostAndUsage 操作时发生错误 (AccessDeniedException):每小时数据粒度是一项仅可选择加入的功能。您可以从 PAYER 账户的 Cost Explorer 设置页面启用此功能。

我没有看到任何设置页面来启用此功能。有什么方法可以通过控制台或 cli 启用此功能?

4

3 回答 3

8

它在许多文档链接中都提到过。

Hourly data granularity is an opt-in only feature.

而当我们执行 CE API 时,它也会抛出错误。

An error occurred (AccessDeniedException) when calling the GetCostAndUsage operation: Hourly data granularity is an opt-in only feature. You can be enable this feature from the PAYER account’s Cost Explorer Settings page.

但是在任何地方都没有提供屏幕截图或详细信息。我附上了屏幕截图,如何启用“每小时和资源级别数据”,例如选择加入每小时数据粒度。

我正在使用合并结算帐户,因此主付款人帐户中需要此设置。

在此处输入图像描述

关于此设置还有几件事需要考虑:

允许所有帐户访问过去 14 天的每小时和资源级别信息。资源级信息仅适用于您的 Amazon EC2 服务使用情况。

请注意,您的数据最多可能需要 24 小时才能可用,并且由于存储和访问您的每小时和资源级别信息,将产生每 1,000 个 UsageRecords 月 0.01 美元的成本。UsageRecord 定义为一条使用记录。例如,一个运行 24 小时的 EC2 实例将按小时粒度生成 24 个不同的 UsageRecords。

完成此设置后,您可以运行 CE API 调用。例如

aws ce get-cost-and-usage --time-period Start="2020-07-07T10:00:00Z",End="2020-07-07T11:00:00Z" --granularity HOURLY --metrics "BlendedCost" --group-by Type=DIMENSION,Key=SERVICE Type=TAG,Key=Environment

需要注意的一点是,对于 HOURLY,时间格式必须为 yyyy-MM-ddThh:mm:ssZ 格式。

于 2020-07-08T01:01:06.823 回答
3

您可以在 AWS Cost Explorer 设置页面上选择每小时粒度。

如果您有一个帐户,则可以在帐户内完成。

如果您的账户是 AWS 组织的一部分,则必须从该组织的付款人账户完成。

于 2020-06-20T08:04:16.173 回答
1

您可以在此处启用每小时报告

https://console.aws.amazon.com/cost-management/home?#/settings

在此处输入图像描述

该功能于 2019 年 11 月 13 日发布,您可以在此处找到相关费用

https://aws.amazon.com/about-aws/whats-new/2019/11/aws-cost-explorer-supports-hourly-resource-level-granularity/

于 2021-02-12T21:28:24.447 回答