

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 “ Amazon 成本异常检测” 检测异常支出
<a name="manage-ad"></a>

Amazon 成本异常检测是一项功能，它使用机器学习模型来检测部署中的异常支出模式并发出警报。 Amazon Web Services 服务

使用 Amazon 成本异常检测具有以下好处：
+ 您可以通过电子邮件或 Amazon SNS 主题接收汇总报告中的单独提醒。
+ 使用机器学习方法评估您的支出模式，以最大限度地减少误报的提醒。例如，您可以评估每周或每月的季节性和有机增长。
+ 您可以调查异常的根本原因，按其对美元的影响进行排序，并分为四个维度： Amazon Web Services 服务、 Amazon Web Services 账户、区域或使用类型。
+ 配置您需要评估成本的方式。选择是要 Amazon Web Services 服务 独立分析所有账户，还是要分析特定的成员账户、成本分配标签或成本类别。

处理完账单数据后，“ Amazon 成本异常检测” 每天大约运行三次，以监控未混合净成本数据（即计算出所有适用折扣后的净成本）中是否存在异常。您可能会在接收提醒时遇到轻微延迟。Cost Anomaly Detection 使用来自 Cost Explorer 的数据，该数据最长可能会延迟 24 小时。因此，发生使用后最长可能需要 24 小时才会检测到异常。如果您创建新的监控，则可能需要 24 小时才能开始检测新的异常。对于新订阅的服务，需要 10 天的历史服务使用数据才能检测到该服务的异常情况。

**注意**  
您可以随时选择退出成本异常检测。有关更多信息，请参阅[退出异常检测](https://docs.amazonaws.cn/cost-management/latest/userguide/opting-out-cad.html)。  
费用异常检测不适用于使用账单转账的账单来源账户。成本异常检测不支持账单转账视图。

**Topics**
+ [设置异常检测](settingup-ad.md)
+ [控制成本异常检测的访问](accesscontrol-ad.md)
+ [Amazon 成本异常检测入门](getting-started-ad.md)
+ [从客户显示器过渡到 Amazon 托管显示器](transition-monitors.md)
+ [编辑提醒首选项](edit-alert-pref.md)
+ [针对预算通知创建 Amazon SNS 主题](ad-SNS.md)
+ [选择退出成本异常检测](opting-out-cad.md)

# 设置异常检测
<a name="settingup-ad"></a>

本节的概述描述了如何开始使用中的 Amazon 成本异常检测。 Amazon 账单与成本管理

**Topics**
+ [启用 Cost Explorer](#enable-ce-ad)
+ [使用 IAM 控制访问](#access-iam-ad)
+ [访问控制台](#access-ad)
+ [配额](#limits-ad-section)

## 启用 Cost Explorer
<a name="enable-ce-ad"></a>

Amazon 成本异常检测是 Cost Explorer 中的一项功能。要访问 Amazon 成本异常检测，请启用 Cost Explorer。有关如何使用控制台启用 Cost Explorer 的信息，请参阅 [启用 Cost Explorer](ce-enable.md)。

## 使用 IAM 控制访问
<a name="access-iam-ad"></a>

在管理账户级别启用 Cost Explorer 后，您可以使用 Amazon Identity and Access Management （IAM）管理对各个独立用户的账单数据的访问权限。然后，您可以为每个用户角色授予或撤消个人级别的访问权限，而不是授予对所有用户的访问权限。

IAM 用户必须获得显式权限才能查看账单和成本管理控制台中的页面。有了相应的权限，用户就可以查看其 Amazon Web Services 账户 所属的费用。有关向用户授予所需权限的策略，请参阅 [Billing and Cost Management 操作策略](billing-permissions-ref.md#user-permissions)。

有关使用资源级访问权限和基于属性的访问权限控制（ABAC）进行成本异常检测的更多信息，请参阅 [控制成本异常检测的访问](accesscontrol-ad.md)。

## 访问控制台
<a name="access-ad"></a>

设置完成后，访问 Amazon 成本异常检测。<a name="access-ad-process"></a>

**访问 Amazon 成本异常检测**

1. 在家中打开[https://console.aws.amazon.com/cost-management/主 Amazon 账单与成本管理](https://console.amazonaws.cn/cost-management/home)机。

1. 在导航窗格中，选择**成本异常检测**。

## 配额
<a name="limits-ad-section"></a>

有关默认配额，请参阅 [Amazon 成本异常检测](management-limits.md#limits-ad)。

# 控制成本异常检测的访问
<a name="accesscontrol-ad"></a>

您可以将资源级访问控制和基于属性的访问权限控制（ABAC）标签用于成本异常监控和异常订阅。每个异常监控和异常订阅资源均有唯一的 Amazon 资源名称（ABC）。您还可以将标签（键值对）添加到每个特征。资源 ARNs 和 ABAC 标签都可用于对您中的用户角色或群组进行精细的访问控制。 Amazon Web Services 账户

有关资源级访问控制和 ABAC 标签的更多信息，请参阅 [Amazon 成本管理如何与 IAM 配合使用](security_iam_service-with-iam.md)。

**注意**  
成本异常检测不支持基于资源的策略。基于资源的策略直接与 Amazon 资源挂钩。有关策略和权限差异的更多信息，请参阅 [IAM 用户指南](https://docs.amazonaws.cn/IAM/latest/UserGuide/access_policies_identity-vs-resource.html)中的*基于身份的策略与基于资源的策略*。

## 使用资源层面的策略限制访问。
<a name="accesscontrol-ad-resource-level"></a>

您可以使用资源级权限来允许或拒绝访问 IAM 策略中的一个或多个成本异常检测资源。或者，使用资源级权限来允许或拒绝访问所有成本异常检测资源。

创建 IAM 时，请使用以下 Amazon 资源名称（ARN）格式：
+ `AnomalyMonitor` 资源 ARN

  `arn:${partition}:ce::${account-id}:anomalymonitor/${monitor-id}`
+ `AnomalySubscription` 资源 ARN

  `arn:${partition}:ce::${account-id}:anomalysubscription/${subscription-id}`

要允许 IAM 实体获取和创建异常监控或异常订阅，请使用与此示例策略类似的策略。

**注意**  
对于 `ce:GetAnomalyMonitor` 和 `ce:GetAnomalySubscription`，用户拥有全部或完全没有资源级访问控制。这要求策略使用 `arn:${partition}:ce::${account-id}:anomalymonitor/*`、`arn:${partition}:ce::${account-id}:anomalysubscription/*` 或 `*` 形式的通用 ARN。
对于 `ce:CreateAnomalyMonitor` 和 `ce:CreateAnomalySubscription`，我们没有该资源的资源 ARN。因此，该策略始终使用上一条中提到的通用 ARN。
对于 `ce:GetAnomalies`，请使用可选 `monitorArn` 参数。与该参数一起使用时，我们会确认用户是否有权访问 `monitorArn`。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "ce:GetAnomalyMonitors",
                "ce:CreateAnomalyMonitor"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws-cn:ce::999999999999:anomalymonitor/*"
        }, 
        {
            "Action": [
                "ce:GetAnomalySubscriptions",
                "ce:CreateAnomalySubscription"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws-cn:ce::999999999999:anomalysubscription/*"
        }
    ]
}
```

------

要允许 IAM 实体更新或删除异常监控，请使用与此示例策略类似的策略。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ce:UpdateAnomalyMonitor",
                "ce:DeleteAnomalyMonitor"
                ],
            "Resource": [
              "arn:aws-cn:ce::999999999999:anomalymonitor/f558fa8a-bd3c-462b-974a-000abc12a000",
              "arn:aws-cn:ce::999999999999:anomalymonitor/f111fa8a-bd3c-462b-974a-000abc12a001"
		]
         }
    ]
}
```

------

## 使用标签控制访问（ABAC）
<a name="accesscontrol-ad-tags"></a>

您可以使用标签（ABAC）以控制对支持标记的成本异常情况检测资源的访问。要根据标签控制访问，您需要在策略的 `Condition` 元素中提供标签信息。然后，您可以创建一个 IAM 策略，以根据资源的标签允许或拒绝访问资源。您可以使用标签条件键以控制对资源、请求或授权过程任何部分的访问。有关使用标签的 IAM 角色的更多信息，请参阅 *IAM 用户指南*中的[使用标签控制对用户和角色的访问](https://docs.amazonaws.cn/IAM/latest/UserGuide/access_iam-tags.html)。

创建允许更新异常监控的基于身份的策略。如果监控标签 `Owner` 的值为用户名，请使用与此示例策略类似的策略。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ce:UpdateAnomalyMonitor"
            ],
            "Resource": "arn:aws-cn:ce::*:anomalymonitor/*",
            "Condition": {
                "StringEquals": {
			"aws:ResourceTag/Owner": "${aws:username}"
		   }
            }
        },
        {
            "Effect": "Allow",
            "Action": "ce:GetAnomalyMonitors",
            "Resource": "*"
        }
    ]
}
```

------

# Amazon 成本异常检测入门
<a name="getting-started-ad"></a>

启用 Amazon 成本异常检测后 Amazon 账单与成本管理，您可以配置成本监控器和提醒订阅，以自动适应不断增长的 Amazon 环境。

Amazon Cost Anomaly Detection 提供 Amazon 托管监控器，无需手动配置即可自动跟踪所有账户、团队或业务部门的成本。随着组织的发展和变化，这些监控器会自动包含新帐户、标签值或类别，无需额外设置即可保持全面的覆盖范围。

**Topics**
+ [创建成本监控和提醒订阅](#create-ad-alerts)
+ [检测到的异常概述](#detector-history-values)
+ [查看检测到的异常和潜在根本原因](#view-ad-monitor)
+ [监视器类型](#monitor-type-def)

## 创建成本监控和提醒订阅
<a name="create-ad-alerts"></a>

要开始监控您的支出， Amazon 成本异常检测需要设置至少一个成本监控器来定义要跟踪的支出模式。创建监视器后，您可以附加警报订阅以指定谁接收通知以及通过哪些渠道接收通知。您还可以使用 Amazon 用户通知创建单独的警报，以便更精细地控制警报的发送方式。

**注意**  
您只能在创建成本监控和提醒订阅的账户下访问它们。只能在管理账户中创建关联账户、成本分配标签和成本类别的成本监控器

------
#### [ Cost monitors ]<a name="ad-alert-process"></a>

**创建成本监控**

1. 在家中打开[https://console.aws.amazon.com/cost-management/主 Amazon 账单与成本管理](https://console.amazonaws.cn/cost-management/home)机。

1. 在导航窗格中，选择**成本异常检测**。

1. 选择 **Cost monitors（成本监控）**选项卡。

1. 选择 **Create monitor（创建监控）**。

1. 在**步骤 1** 中，选择监控类型并命名您的监控。

   对于 **Monitor name（监控类型）**，输入异常监控的名称。我们建议名称为简短说明。我们建议名称为简短说明，以使您查看**成本监控**选项卡上监控时了解该监控所代表的内容。

   有关每种监控类型和最佳实践的更多信息，请参阅 [监视器类型](#monitor-type-def)。

   根据需要选择您的监控方法：
   + **对于 Amazon 托管显示器：**

     1. 在 “**监控方法**” 下，选择 “**管理者**” Amazon。

     1. 选择要监控的维度：
        + Amazon Web Services 服务 - Amazon Web Services 服务 自动追踪所有内容
        + 关联账户-自动跟踪所有成员账户
        + 成本分配标签-跟踪指定标签密钥的所有值
        + 成本类别-跟踪指定类别中的所有值

     1. 如果您选择了成本分配标签，请从下拉列表中指定标签键（例如，“应用程序团队” 或 “环境”）。

     1. 如果您选择了成本类别，请从下拉列表中指定类别。
   + **对于客户管理的显示器：**

     1. 为您的显示器选择尺寸。

     1. 在 “监控方法” 下，选择 “**客户管理**”。

     1. 选择要监控的特定值（最多 10 个）。

1. （可选）添加标签到监控。有关标签的更多信息，请参阅 *Amazon Web Services 一般参考 指南*中的[标记 Amazon 资源](https://docs.amazonaws.cn/general/latest/gr/aws_tagging.html)。

   1. 输入标签的键和值。

   1. 要添加其他标签，请选择**添加新标签**。您可以添加的最大标签数量为 50。

1. 选择**下一步**。

1. 在**步骤 2** 中，配置您的提醒订阅。

   对于**提醒订阅**，如果您没有现有的订阅，请选择**创建新订阅**。如果您有现有的订阅，请选择 **Choose an existing subscription（选择现有的订阅）**。
**注意**  
当成本监控检测到异常时，提醒订阅会通知您。根据提醒频率，您可以通过电子邮件或 Amazon SNS 通知指定的个人。

   对于**订阅名称**，输入描述使用案例的名称。例如，如果订阅针对领导力，则订阅名称可能是“领导力报告（Leadership report）”。

   在**提醒频率**下，选择首选的通知频率。
   + **Individual alerts（单独提醒）**- 一旦检测到异常，提醒将立即通知您。您可能会在一天内收到多次提醒。这些通知需要 Amazon SNS 主题。
   + **每日摘要** - 包含前一天前 10 个警报的每日摘要的电子邮件通知，按成本影响排序。系统每天 00:00 UTC 生成此摘要，但实际交付时间可能会有所不同。例如，1 月 14 日 04:30 UTC 检测到的异常情况将包含在 1 月 15 日 00:00 UTC 发送的每日摘要中。必须指定至少一个电子邮件收件人。对于即时警报，建议使用单独警报选项。
   + **每周摘要** - 包含每周警报摘要的电子邮件通知。您每周会收到一封电子邮件，其中包含有关当周发生的多个异常的信息。必须指定至少一个电子邮件收件人。

   在**提醒收件人**下，输入此订阅的电子邮件地址。

   在**阈值**中，输入一个数字来配置要为其生成提醒的异常情况。

   有两种类型的阈值：绝对阈值和百分比阈值。当异常的总成本影响超过您选择的阈值时，绝对阈值会生成提醒。当异常的总影响百分比超过您选择的阈值时，百分比阈值会生成提醒。总影响百分比是预期总支出与实际总支出之间的百分比差。

   （可选）选择**添加阈值**，为同一订阅配置第二个阈值。通过从下拉列表中选择 **AND** 或 **OR**，可以组合阈值。
**注意**  
Amazon **当异常达到或超过阈值时，成本异常检测会向您发送通知。**如果异常持续多天，则在达到阈值时，提醒收件人将继续收到通知。  
即使异常低于提醒阈值，机器学习模型也会继续检测您账户上的支出异常。机器学习模型检测到的所有异常（成本影响大于和小于阈值）均在**检测到的异常**选项卡中提供。

1. （可选）向提醒订阅添加标签。有关标签的更多信息，请参阅 *Amazon Web Services 一般参考 指南*中的[标记 Amazon 资源](https://docs.amazonaws.cn/general/latest/gr/aws_tagging.html)。

   1. 输入标签的键和值。

   1. 要添加其他标签，请选择**添加新标签**。您可以添加的最大标签数量为 50。

1. （可选）选择 **Add alert subscriptions（添加订阅）**以创建另一个提醒订阅。通过此选项，您可以使用同一监控创建新订阅。

1. 选择 **Create monitor（创建监控）**。

** Amazon 托管显示器的重要注意事项：**
+ 附加到 Amazon 托管监视器的警报订阅对所有跟踪值使用相同的阈值
+ 当新的成员账户、标签或类别添加到您的 Amazon 环境中时，它们会自动包含在内
+ 您无法将现有的客户托管显示器转换为 Amazon 托管显示器
+ 要实现基于特定值的精细警报路由，请使用 JSON 过滤模式配置 Amazon 用户通知 

**注意**  
Amazon 托管监视器可以在一个维度内跟踪多达 5,000 个值。如果您的组织拥有超过 5,000 个值（例如，超过 5,000 个成员账户或标签值），则监控器将根据其总支出跟踪前 5,000 个值。

------
#### [ Alert subscriptions ]<a name="ad-create-a-subscription"></a>

**创建提醒订阅**

您必须至少为每个监控创建一个提醒订阅。之前描述的“创建成本监控步骤”已包含提醒订阅创建过程。如果要创建其他订阅，请执行以下步骤。

1. 选择**提醒订阅**选项卡。

1. 选择 **Create a subscription（创建订阅）**。

1. 对于 **Subscription name（订阅名称）**，输入描述使用案例的名称。例如，如果订阅针对领导力，则订阅名称可能是“Leadership report（领导力报告）”。

1. 在**提醒频率**下，选择首选的通知频率。
   + **Individual alerts（单独提醒）**- 一旦检测到异常，提醒将立即通知您。您可能会在一天内收到多次提醒。这些通知需要 Amazon SNS 主题。
   + **每日摘要** - 包含前一天前 10 个警报的每日摘要的电子邮件通知，按成本影响排序。系统每天 00:00 UTC 生成此摘要，但实际交付时间可能会有所不同。例如，1 月 14 日 04:30 UTC 检测到的异常情况将包含在 1 月 15 日 00:00 UTC 发送的每日摘要中。必须指定至少一个电子邮件收件人。对于即时警报，建议使用单独警报选项。
   + **每周摘要** - 包含每周警报摘要的电子邮件通知。您每周会收到一封电子邮件，其中包含有关当周发生的多个异常的信息。必须指定至少一个电子邮件收件人。

1. 在**提醒收件人**下，输入此订阅的电子邮件地址。

1. 在**阈值**中，输入一个数字来配置要为其生成提醒的异常情况。

   有两种类型的阈值：绝对阈值和百分比阈值。当异常的总成本影响超过您选择的阈值时，绝对阈值会生成提醒。当异常的总影响百分比超过您选择的阈值时，百分比阈值会生成提醒。总影响百分比是预期总支出与实际总支出之间的百分比差。

   （可选）选择**添加阈值**，为同一订阅配置第二个阈值。通过从下拉列表中选择 **AND** 或 **OR**，可以组合阈值。
**注意**  
Amazon **当异常达到或超过阈值时，成本异常检测会向您发送通知。**如果异常持续多天，则在达到阈值时，提醒收件人将继续收到通知。  
即使异常低于提醒阈值，机器学习模型也会继续检测您账户上的支出异常。机器学习模型检测到的所有异常（成本影响大于和小于阈值）均在**检测到的异常**选项卡中提供。

1. 在**成本监控**部分中，选择您想要与提醒订阅关联的监控。

1. （可选）向提醒订阅添加标签。有关标签的更多信息，请参阅 *Amazon Web Services 一般参考 指南*中的[标记 Amazon 资源](https://docs.amazonaws.cn/general/latest/gr/aws_tagging.html)。

   1. 输入标签的键和值。

   1. 要添加其他标签，请选择**添加新标签**。您可以添加的最大标签数量为 50。

1. 选择**创建订阅**。

------
#### [ Amazon User Notifications ]

有关如何创建单个警报的信息，请参阅将[Amazon 用户通知与成本异常检测结合使用](https://docs.amazonaws.cn/cost-management/latest/userguide/cad-user-notifications.html)。

------

## 检测到的异常概述
<a name="detector-history-values"></a>

在**检测到的异常**选项卡上，可以查看在选定时间范围内检测到的所有异常的列表。默认情况下，您可以查看过去 90 天内检测到的异常。您可以按**严重性**、**评估**、**服务**、**使用类型**、**区域**、**监控类型**、**账户**或**异常 ID** 搜索异常。您可以按**开始日期**、**上次检测日期**、**持续时间**、**成本影响**、**影响 %**、**监控名称**和**主要根本原因（服务）**进行排序。

**检测到的异常**选项卡包含以下默认列：

**开始日期**  
开始出现日常日期。

**上次检测日期**  
上次检测到异常的时间。

**Duration**  
异常持续的持续时间。异常可能持续存在。

**成本影响**  
与预期支出金额相比，检测到支出增加。它的计算方式为 **actual spend - expected spend**。例如，对服务监控的成本影响为 20 美元，意味着我们检测到特定服务在指定天数的总持续时间内增加了 20 美元。

**影响 %**  
实际支出与预期支出之间的百分比差。它的计算方式为 **(total cost impact / expected spend) \$1 100**。例如，如果总成本影响为 20 美元，预期支出为 60 美元，则影响百分比将为 33.33％。当预期支出为零时，无法计算此值，因此在这种情况下，该值将显示为“N/A”。

**监控名称**  
异常监控的名称。

**主要根本原因（服务）**  
异常的主要服务根本原因。在“主要根本原因”列中选择服务名称会显示异常的主要根本原因的其他三个根本原因维度：账户、区域和使用类型。

**查看更多信息**  
指向异常详细信息页面的链接，其中包含有关异常的根本原因分析和成本影响的信息。该链接还显示检测到的异常的根本原因的数量。

还可以将**检测到的异常**选项卡配置为显示其他信息列。所做的任何更改都将保存在账户级别，以便后续访问**检测到的异常**选项卡。**检测到的异常**选项卡中包含以下**可选列**。

**Account**  
导致异常的账户 ID 和账户名称。如果账户为空 Amazon ，则检测到异常，但根本原因尚不确定。

**Region**  
检测到的区域是异常的主要根本原因。

**使用情况类型**  
检测到的使用类型是异常的主要根本原因。

**预期支出**  
根据您的历史支出模式，我们的机器学习模型预计您在异常持续时间内的花费的金额。

**实际支出**  
您在异常持续时间内实际花费的总金额。

**评估**  
对于每个检测到的异常，您都可以提交评估，以帮助改进我们的异常检测系统。可能的值包括 **Not submitted（未提交）**、**Not an issue（不是问题）**或 **Accurate anomaly（准确异常）**。

**严重性**  
表示某个特定异常的异常程度，考虑历史支出模式。低严重性通常表明与历史支出相比的小峰值，而高严重性则表明大峰值。但是，历史支出一致的小峰值被归类为高严重性。而且，同样，历史支出不规律的大峰值被归类为低严重性。

## 查看检测到的异常和潜在根本原因
<a name="view-ad-monitor"></a>

创建监控器后，“ Amazon 成本异常检测” 将评估您未来的支出。根据您定义的提醒首选项，您可能会在 24 小时内开始接收提醒。<a name="view-email-process"></a>

**通过电子邮件提醒查看异常**

1. 选择提供的 **View in Anomaly Detection（在异常检测中查看）**链接。

1. 在**异常详细信息**页面中，您可以查看异常的根本原因分析和成本影响。

1. （可选）选择**在 Cost Explorer 中查看**，以查看成本影响的时间序列图。

1. （可选）在**排名最高的潜在根本原因**表中选择**查看根本原因**，查看按该根本原因筛选的时间序列图。

1. （可选）在信息提示**您觉得这一检测到的异常有帮助吗？**中选择**提交评估**，提供反馈并帮助改善我们的检测精度。<a name="view-console-process"></a>

**从控制台查看您的异常情况 Amazon 账单与成本管理**

1. 在家中打开[https://console.aws.amazon.com/cost-management/主 Amazon 账单与成本管理](https://console.amazonaws.cn/cost-management/home)机。

1. 在导航窗格中，选择**成本异常检测**。

1. （可选）在**检测到的异常**选项卡上，使用搜索区域将检测到的异常列表缩小为特定类别。您可以按严重性、评估、服务、账户 ID、使用类型、区域和监控类型进行搜索。

1. （可选）选择**开始日期**以查看特定异常的详细信息。

1. 在**异常详细信息**页面中，您可以查看异常的根本原因分析和成本影响。

1. （可选）选择**在 Cost Explorer 中查看**，以查看成本影响的时间序列图，并在必要时更深入地研究数据。

1. （可选）在**排名最高的潜在根本原因**表中选择**查看根本原因**，以查看按根本原因筛选的时间序列图。

1. （可选）在信息提示**您觉得这一检测到的异常有帮助吗？**中选择**提交评估**，提供反馈并帮助改善我们的检测精度。<a name="view-anomaly-sns"></a>

**从 Amazon SNS 主题查看您的异常**

1. 将终端节点订阅到您为具有单独提醒的成本监控创建的 Amazon SNS 主题。有关说明，请参阅 *Amazon Simple Notification Service 开发人员指南*中的[订阅 Amazon SNS 主题](https://docs.amazonaws.cn/sns/latest/dg/sns-create-subscribe-endpoint-to-topic.html)。

1. 在您的终端节点收到来自 Amazon SNS 主题的消息后，打开一条消息，然后找到相应的 **anomalyDetailsLink**URL。以下示例是 “ Amazon 成本异常检测” 通过 Amazon SNS 发送的一条消息。

   ```
   {
       "accountId": "123456789012",
       "anomalyDetailsLink": "https://console.amazonaws.cn/cost-management/home/anomaly-detection/monitors/abcdef12-1234-4ea0-84cc-918a97d736ef/anomalies/12345678-abcd-ef12-3456-987654321a12",
       "anomalyEndDate": "2021-05-25T00:00:00Z",
       "anomalyId": "12345678-abcd-ef12-3456-987654321a12",
       "anomalyScore": {
           "currentScore": 0.47,
           "maxScore": 0.47
       },
       "anomalyStartDate": "2021-05-25T00:00:00Z",
       "dimensionalValue": "ServiceName",
       "impact": {
           "maxImpact": 151,
           "totalActualSpend": 1301,
           "totalExpectedSpend": 300,
           "totalImpact": 1001,
           "totalImpactPercentage": 333.67
       },
       "monitorArn": "arn:aws-cn:ce::123456789012:anomalymonitor/abcdef12-1234-4ea0-84cc-918a97d736ef",
       "rootCauses": [
           {
               "linkedAccount": "AnomalousLinkedAccount",	
               "linkedAccountName": "AnomalousLinkedAccountName",	
               "region": "AnomalousRegionName",
               "service": "AnomalousServiceName",
               "usageType": "AnomalousUsageType"
           }
       ],
       "subscriptionId": "874c100c-59a6-4abb-a10a-4682cc3f2d69",
       "subscriptionName": "alertSubscription"
   }
   ```

1. 在 Web 浏览器中打开 **anomalyDetailsLink**URL。该 URL 将带您进入关联的**异常详细信息**页面。此页显示异常的根本原因分析和成本影响。

## 监视器类型
<a name="monitor-type-def"></a>

您可以选择适合您账户结构的监控器类型。 Amazon Cost Anomaly Detection 提供了两种创建监控器的方法： Amazon 托管监视器，可自动独立跟踪某个维度内的前 5,000 个值，以及允许您选择聚合监控的特定值的客户管理监视器。


| 显示器尺寸 | Amazon 托管 | 客户管理 | 
| --- | --- | --- | 
| Amazon Web Services 服务 | 自动评估您账户 Amazon Web Services 服务 使用的所有异常情况。当您开始使用新功能时 Amazon Web Services 服务，显示器会自动开始对其进行评估。管理账户和成员账户均可用。 | 不支持客户管理的 Amazon Web Services 服务 显示器。 | 
| 关联账户 | 自动跟踪组织中所有成员账户的支出模式。添加新账户后，它们会自动包含在监控覆盖范围中。仅在管理账户中可用。 | 跟踪您手动选择的特定成员帐户（最多 10 个）。支出是按选定账户汇总的。对于同时监控特定的项目账户或环境很有用。 | 
| 成本分配标签 | 自动监控指定标签键的所有唯一值。例如，指定 “应用程序团队” 会独立跟踪每个团队值（team-a、team-b、team-c）。新标签值在创建时会自动包括在内。 | 跟踪您为给定标签密钥手动选择的特定标签值（最多 10 个）。当你需要为不同的标签值设置不同的阈值或者只想监控高优先级团队时，这很有用。 | 
| 成本类别 | 自动跟踪指定成本类别中的所有值。如果您的 “业务部门” 类别具有诸如 “零售”、“批发” 和 “运营” 之类的值，则监视器会独立分析每个部门的支出模式。新的成本类别值在创建时会自动包括在内。 | 跟踪您手动选择的一个特定成本类别值。适用于监控具有独特阈值要求的特定业务部门或成本中心。 | 

您可以为每台客户管理的显示器选择的成员账户或标签值的最大数量为 10。

**何时使用每种显示器类型**

在需要时使用**Amazon 托管显示器**：
+ 全面覆盖一个维度中的所有值
+ 随着组织的发展自动适应
+ 维护开销最小
+ 对所有团队/账户进行持续监控

在需要时使用**客户管理的显示器**：
+ 不同群组的警报阈值不同
+ 监控账户或团队的特定子集
+ 按特定值汇总支出
+ 针对高优先级或敏感工作负载的特殊监控

**最佳实践：**
+ 使用 Amazon 托管监控器全面覆盖您的主要成本组织维度
+ 将您的 Amazon Web Services 服务 显示器与其他 Amazon 托管显示器一起维护，以获得总体服务级别可见性
+ 对于需要不同阈值或分组的特定用例，使用客户 Amazon 托管监视器来补充托管显示器
+ 避免创建跨多个维度的监视器，以防止重复警报

**注意**  
客户管理的显示器以前被称为自定义监视器。功能保持不变，名称的更改反映了与代表您 Amazon 管理的监视器的区别。

有关创建 Amazon SNS 主题的更多信息，请参阅 [针对预算通知创建 Amazon SNS 主题](ad-SNS.md)。

# 从客户显示器过渡到 Amazon 托管显示器
<a name="transition-monitors"></a>

如果您目前使用多个客户管理的监视器来跟踪个人账户、团队或类别，则可以过渡到 Amazon 托管监视器，以简化管理和自动覆盖范围。 

**过渡进程**

1. **在现有客户 Amazon 管理的显示器旁边创建您的托管显示器**
   + 选择与您的主要成本组织方法相匹配的维度
   +  Amazon 托管显示器将自动开始跟踪所有值

1. **验证检测覆盖范围**
   + 允许 Amazon 托管显示器运行至少 24-48 小时 
   + 将检测到的异常与您现有的客户托管监视器进行比较
   + 确保 Amazon 托管显示器按预期检测异常

1. **配置警报订阅**
   + 为 Amazon 托管显示器设置适当的阈值
   + 请注意，附加到 Amazon 托管显示器的警报订阅对所有跟踪值使用相同的阈值
   + 对于特定于值的路由，请使用 JSON 模式配置 Amazon 用户通知

1. **移除多余的客户托管显示器** 
   + 确认完整覆盖范围后，删除个别客户管理的显示器
   + 保留所有用于特定用途（例如对相关账户进行分组）的客户托管监视器

**过渡场景示例：**如果您有 50 个客户管理的监控器通过成本分配标签跟踪各个应用程序团队：

1. 使用您的团队标签密钥创建一个 Amazon 托管成本分配标签监控器

1. 验证它能检测到所有团队的异常情况

1. 使用适当的阈值配置警报订阅

1. 删除 50 台独立客户管理的显示器

**重要注意事项：**
+ 不支持从客户管理的显示器直接转换为 Amazon 托管显示器
+ Amazon 由于覆盖范围广泛，托管监视器最初可能会生成更多的异常检测
+ 删除客户管理的监控器时，其历史异常数据会被保留（仅可通过 API 获得；已删除的监控器及其异常不会显示在控制台中）
+ 考虑为需要不同阈值的特定用例保留一些客户托管的显示器

# 编辑提醒首选项
<a name="edit-alert-pref"></a>

您可以调整费用监控器和提醒订阅 Amazon 账单与成本管理 以满足您的需求。

您还可以在 Amazon 用户通知中编辑通知配置。

**注意**  
使用 Amazon 托管监视器时，请考虑将单个阈值应用于所有跟踪的值。如果您需要为不同的团队或账户设置不同的警报阈值，则可以：  
创建具有特定阈值的专用警报订阅的补充客户托管监视器
使用 Amazon 用户通知根据异常属性筛选和发送警报
使用警报路由的自定义逻辑配置 Amazon SNS 主题 

------
#### [ Cost monitors ]<a name="edit-cost-monitor"></a>

**编辑成本监控**

1. 在家中打开[https://console.aws.amazon.com/cost-management/主 Amazon 账单与成本管理](https://console.amazonaws.cn/cost-management/home)机。

1. 在导航窗格中，选择**成本异常检测**。

1. 选择**成本监控**选项卡。

1. 选择要编辑的监控。

1. 选择**编辑**。
   + （备选）选择单个监控名称。
   + 选择 **Edit monitor（编辑监控）**。

1. 在 **Edit monitor（编辑监控）**页面上，更改 **monitor name（监控名称）**和 **attached alert subscriptions（附加的提醒订阅）**的任何设置。

1. 选择**管理标签**，为监控添加、编辑或移除标签。

1. 选择**保存**。

------
#### [ Alert subscriptions ]<a name="edit-alert-process"></a>

**编辑提醒订阅**

1. 在家中打开[https://console.aws.amazon.com/cost-management/主 Amazon 账单与成本管理](https://console.amazonaws.cn/cost-management/home)机。

1. 在导航窗格中，选择**成本异常检测**。

1. 选择**提醒订阅**选项卡。

1. 选择要编辑的订阅。

1. 选择**编辑**。
   + （备选）选择单个监控名称。
   + 选择**编辑**。

1. 在 **Edit alert subscription（编辑提醒订阅）**页面上，更改 **subscription name（订阅名称）**、**threshold（阈值）**、**frequency（频率）**、**recipients（收件人）**或 **cost monitors（成本监控）**的任何设置。

1. 选择**管理标签**，为监控添加、编辑或移除标签。

1. 选择**保存**。

------
#### [ Amazon User Notifications ]

有关如何编辑通知配置的信息，请参阅《用户[通知用户*指南》中的 “ Amazon 用户通知”Amazon 中的编辑通知*配置](https://docs.amazonaws.cn/notifications/latest/userguide/edit-notifications.html)。

------

# 针对预算通知创建 Amazon SNS 主题
<a name="ad-SNS"></a>

当您创建向 Amazon Simple Notiﬁcation Service（Amazon SNS）主题发送通知的异常检测监控时，您必须有一个预先存在的 Amazon SNS 主题或创建一个。除了电子邮件之外，您还可以使用亚马逊 SNS 主题通过亚马逊 SNS 发送通知。 Amazon 成本异常检测必须具有向您的主题发送通知的权限。

**创建 Amazon SNS 通知主题并授予权限**

1. [登录 Amazon Web Services 管理控制台 并在 v3/home 上打开亚马逊 SNS 控制台。https://console.aws.amazon.com/sns/](https://console.amazonaws.cn/sns/v3/home)

1. 在导航窗格中，选择**主题**。

1. 选择**创建主题**。

1. 对于**名称**，输入您通知主题的名称。

1. （可选）对于**显示名称**，输入您希望在收到通知时显示的名称。

1. 在**访问策略** 中，选择**高级**。

1. 在策略文本字段中，在 ** "Statement": [** 后面，添加以下文本：

   要允许 Amazon 成本异常检测服务向 Amazon SNS 主题发布内容，请使用以下语句。

   ```
   {
     "Sid": "E.g., AWSAnomalyDetectionSNSPublishingPermissions",
     "Effect": "Allow",
     "Principal": {
       "Service": "costalerts.amazonaws.com"
     },
     "Action": "SNS:Publish",
     "Resource": "your topic ARN"
   }
   ```

   要允许 Amazon 成本异常检测服务仅代表特定账户向 Amazon SNS 主题发布信息，请使用以下声明。

   ```
   {
     "Sid": "E.g., AWSAnomalyDetectionSNSPublishingPermissions",
     "Effect": "Allow",
     "Principal": {
       "Service": "costalerts.amazonaws.com"
     },
     "Action": "SNS:Publish",
     "Resource": "your topic ARN",
     "Condition": {
           "StringEquals": {
             "aws:SourceAccount": [
               "account-ID"
             ]
           }
     }
   }
   ```
**注意**  
在本主题策略中，您可以输入订阅的账户 ID 作为 `aws:SourceAccount` 条件的值。只有在对拥有订阅的账户执行操作时， Amazon 成本异常检测才会与 Amazon SNS 主题进行交互。  
您可以将 Amazon 成本异常检测限制为仅在代表特定订阅执行操作时与主题进行交互。为此，请使用主题策略中的 `aws:SourceArn` 条件。  
有关角色的更多信息，请参阅 *IAM 用户指南*中的 [https://docs.amazonaws.cn/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount](https://docs.amazonaws.cn/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount) 角色术语和概念 [https://docs.amazonaws.cn/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn](https://docs.amazonaws.cn/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn)。

1. 在您选择的主题策略语句中，替换以下值：
   + 用字符串替换（例如*AWSAnomalyDetectionSNSPublishingPermissions*）。`Sid` 在策略中必须是唯一的。
   + *your topic ARN*替换为亚马逊 SNS 主题亚马逊资源名称 (ARN)。
   + 如果您使用带有`aws:SourceAccount`条件的对账单，请替换为*account-ID*拥有订阅的账户 ID。如果 Amazon SNS 主题有来自不同账户的多个订阅，请在该条件中添加多个账户 IDs 。`aws:SourceAccount`

1. 选择**创建主题**。

   您的主题现在显示在**主题**页面上的主题列表中。

## 检查或重新发送通知确认电子邮件
<a name="ad-confirm-subscription"></a>

当您创建带通知的异常检测监控时，您还将创建 Amazon SNS 通知。对于要发送的通知，您必须接受对 Amazon SNS 通知主题的订阅。

要确认您的通知订阅已接受或重新发送订阅确认电子邮件，请使用 Amazon SNS 控制台。

**检查您的通知状态或重新发送通知确认电子邮件**

1. [登录 Amazon Web Services 管理控制台 并在 v3/home 上打开亚马逊 SNS 控制台。https://console.aws.amazon.com/sns/](https://console.amazonaws.cn/sns/v3/home)

1. 在导航窗格中，选择**订阅**。

1. 检查通知的状态。如果未接受并确定订阅，**状态**下将显示 `PendingConfirmation`。

1. （可选）要重新发送确认请求，请选择待确认的订阅，然后选择**请求确认**。Amazon SNS 将向订阅通知的终端节点发送确认请求。

   在终端节点的每个所有者收到电子邮件后，他们必须选择**确认订阅**链接来激活通知。

## 使用 SSE 保护您的 Amazon SNS 异常检测警报数据，以及 Amazon KMS
<a name="protect-sns-sse"></a>

您可以使用服务器端加密（SSE），采用加密主题的方式传输敏感数据。SSE 通过使用托管在 Amazon Key Management Service （Amazon KMS）中的密钥保护 Amazon SNS 消息。

要使用 Amazon Web Services 管理控制台 或 Amazon 软件开发工具包管理 SSE，请参阅亚马逊*简单通知服务入门*指南中的[为亚马逊 SNS 主题启用服务器端加密 (SSE)](https://docs.amazonaws.cn/sns/latest/dg/sns-tutorial-enable-encryption-for-topic.html)。

要使用创建加密主题 Amazon CloudFormation，请参阅[Amazon CloudFormation 用户指南](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/Welcome.html)。

一旦 Amazon SNS 收到消息，SSE 就会对消息进行加密。消息以加密方式存储，仅在发送后才会使用 Amazon SNS 解密。

### 配置 Amazon KMS 权限
<a name="configure-kms-perm"></a>

必须先配置 Amazon KMS 密钥策略，然后才能使用服务器端加密 (SSE)。该配置让您可以加密主题，以及加密和解密消息。有关 Amazon KMS 权限的信息，请参阅《*Amazon Key Management Service 开发者指南》*中的 [Amazon KMS API 权限：操作和资源参考](https://docs.amazonaws.cn/kms/latest/developerguide/kms-api-permissions-reference.html)。

您还可以使用 IAM 策略来管理 Amazon KMS 密钥权限。有关更多信息，请参阅[在 Amazon KMS中使用 IAM 策略](https://docs.amazonaws.cn/kms/latest/developerguide/iam-policies.html)。

**注意**  
您可以配置发送和接收来自 Amazon SNS 的消息的全局权限。但是， Amazon KMS 要求您在具体中命名（KMS 密钥）的完整亚马逊资源名称 Amazon KMS keys (ARN)。 Amazon Web Services 区域您可以在 IAM 策略的**资源**部分中找到此内容。  
您必须确保 KMS 密钥的密钥策略允许必要的权限。为此，请将在 Amazon SNS 中创建和使用加密消息的委托人指定为 CMK 密钥策略中的用户。<a name="enable-compatiblility"></a>

**启用 Amazon 成本异常检测和加密的 Amazon SNS 主题之间的兼容性**

1. [创建 KMS 密钥](https://docs.amazonaws.cn/kms/latest/developerguide/create-keys.html#create-keys-console)。

1. 将以下策略之一添加为 KMS 密钥策略：

   要向 Amazon 成本异常检测服务授予对 KMS 密钥的访问权限，请使用以下语句。

------
#### [ JSON ]

****  

   ```
   {
       "Version": "2012-10-17",
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "costalerts.amazonaws.com"
               },
               "Action": [
                   "kms:GenerateDataKey*",
                   "kms:Decrypt"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

------

   要仅在代表特定账户执行操作时授予 Amazon 成本异常检测服务访问 KMS 密钥的权限，请使用以下语句。

------
#### [ JSON ]

****  

   ```
   {
       "Version": "2012-10-17",
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "costalerts.amazonaws.com"
               },
               "Action": [
                   "kms:GenerateDataKey*",
                   "kms:Decrypt"
               ],
               "Resource": "*",
               "Condition": {
                   "StringEquals": {
                       "aws:SourceAccount": [
                           "account-ID"
                       ]
                   }
               }
           }
       ]
   }
   ```

------
**注意**  
在此 KMS 密钥策略中，您可以输入订阅的账户 ID 作为 `aws:SourceAccount` 条件的值。在这种情况下，只有在为拥有订阅的账户执行操作时， Amazon 成本异常检测才会与 KMS 密钥进行交互。  
要让 Amazon 成本异常检测仅在代表特定订阅执行操作时才与 KMS 密钥交互，请使用 KMS 密钥策略中的`aws:SourceArn`条件。  
有关角色的更多信息，请参阅 *IAM 用户指南*中的 [https://docs.amazonaws.cn/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount](https://docs.amazonaws.cn/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount) 角色术语和概念 [https://docs.amazonaws.cn/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn](https://docs.amazonaws.cn/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn)。

1. 如果您使用带有`aws:SourceAccount`条件的 KMS 密钥策略，请替换为*account-ID*拥有该订阅的账户 ID。如果 Amazon SNS 主题有来自不同账户的多个订阅，请在该条件中添加多个账户 IDs 。`aws:SourceAccount`

1. [为您的亚马逊 SNS 主题启用 SSE](https://docs.amazonaws.cn/sns/latest/dg/sns-tutorial-enable-encryption-for-topic.html)。
**注意**  
确保您使用的是向 Amazon 成本异常检测授予权限的相同 KMS 密钥，以发布到加密的 Amazon SNS 主题。

1. 选择**保存更改**。

# 选择退出成本异常检测
<a name="opting-out-cad"></a>

您可以随时选择退出成本异常检测。要选择退出，您需要删除账户中的所有费用监控和提醒订阅。在您选择退出后，“成本异常检测”将不再监控您的支出模式是否存在异常情况。您也不会再收到任何通知。

**选择退出成本异常检测**

1. 在家中打开[https://console.aws.amazon.com/cost-management/主 Amazon 账单与成本管理](https://console.amazonaws.cn/cost-management/home)机。

1. 在导航窗格中，选择**成本异常检测**。

1. 要删除任何现有的成本监控，请执行以下操作：

   1. 选择**成本监控**选项卡。

   1. 选择要删除的成本模型。

   1. 选择**删除**。

   1. 在**删除成本监控**对话框中，选择**删除**以删除模型。

   1. 对任何额外的成本监控重复上述步骤。

1. 要删除任何现有的提醒订阅，请执行以下操作：

   1. 选择**提醒订阅**选项卡。

   1. 选择要删除的提醒订阅。

   1. 选择**删除**。

   1. 在**删除订阅**对话框中，选择**删除**。

   1. 对于任何其他提醒订阅，请重复上述步骤。

**注意**  
您还可以通过在 Cost Explorer API 中删除成本监控和提醒订阅来选择退出成本异常检测。为此，你需要使用[DeleteAnomalyMonitor](https://docs.amazonaws.cn/aws-cost-management/latest/APIReference/API_DeleteAnomalyMonitor.html)和[DeleteAnomalySubscription](https://docs.amazonaws.cn/aws-cost-management/latest/APIReference/API_DeleteAnomalySubscription.html)。