

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

# 指标归因的准则和要求
<a name="metric-attribution-requirements"></a>

 只有在您创建指标归因后，Amazon Personalize 才会开始计算和报告建议的影响。要构建最完整的历史记录，我们建议您在导入交互数据之前创建指标归因。当您使用 Amazon Personalize 控制台为物品交互数据集创建数据集导入作业时，您可以选择在新选项卡中创建指标归因。然后，您可以返回导入作业，将其完成。

 创建指标归因并记录事件或导入增量批量数据后，每个指标每月将产生一些 CloudWatch 费用。有关 CloudWatch 定价的信息，请参阅 [Amazon CloudWatch 定价](https://www.amazonaws.cn/cloudwatch/pricing/)页面。要停止向发送指标 CloudWatch，[请删除指标归因](deleting-metric-attribution.md)。

 要了解建议在一段时间内的影响，请在客户与建议交互时继续导入数据。如果您已经导入了数据，仍然可以创建指标归因并开始衡量建议的影响。但是，Amazon Personalize 不会报告您在创建数据之前导入的数据。

以下是生成带有指标归因的报告的指南和要求：
+ 您必须授予 Amazon Personalize 访问和输入数据的权限 CloudWatch。有关策略示例，请参阅 [让 Amazon Personalize 访问权限 CloudWatch](#metric-attribution-cw-permissions)。
+ 要将指标发布到 Amazon S3，请向 Amazon Personalize 授予写入存储桶的权限。您还必须在指标归因中提供存储桶路径。有关策略示例，请参阅 [向 Amazon Personalize 授予访问 Amazon S3 存储桶的权限](#metric-attribution-s3-permissions)。
+  要向发布指标 CloudWatch，记录必须少于 14 天。如果您的数据较旧，则这些记录将不会包含在计算或报告中。
+  导入重复的事件（与所有属性完全匹配的事件）可能会导致意外行为，包括不准确的指标。我们建议您在导入之前从任何批量数据中删除重复的记录，并避免通过 `PutEvents` 操作导入重复的事件。
+ 您的物品交互数据集必须包含 `EVENT_TYPE` 列。
+ 您无法为操作交互数据集中的数据创建指标报告。
+ 每个数据集组最多可以创建一个指标归因。每个指标归因最多可以有 10 个指标。

要比较源，每个交互事件都必须包含 `recommendationId` 或 `eventAttributionSource`。您最多可以提供 100 个唯一的事件归因源。有关 `PutEvents` 代码示例，请参阅 [事件指标和归因报告](event-metrics.md)。
+  如果您提供 `recommendationId`，则 Amazon Personalize 会自动确定源市场活动或推荐器，并在报告的 EVENT\_ATTRIBUTION\_SOURCE 列中对其进行识别。
+  如果您同时提供这两个属性，则 Amazon Personalize 将仅使用 `eventAttributionSource`。
+  如果您未提供源，则 Amazon Personalize 会在报告中标记源 `SOURCE_NAME_UNDEFINED`。

**Topics**
+ [让 Amazon Personalize 访问权限 CloudWatch](#metric-attribution-cw-permissions)
+ [向 Amazon Personalize 授予访问 Amazon S3 存储桶的权限](#metric-attribution-s3-permissions)

## 让 Amazon Personalize 访问权限 CloudWatch
<a name="metric-attribution-cw-permissions"></a>

**重要**  
当您授予权限时，Amazon Personalize 会在其中放置并验证少量数据。 CloudWatch这将产生不到 0.30 美元的一次性费用。有关 CloudWatch 定价的更多信息，请参阅 [Amazon CloudWatch 定价](https://www.amazonaws.cn/cloudwatch/pricing/)页面。

要向 Amazon Personalize 提供访问权限 CloudWatch，请将新 Amazon Identity and Access Management (IAM) 政策附加到您的 Amazon Personalize 服务角色，授予该角色使用`PutMetricData`操作的权限 CloudWatch。以下策略示例授予 `PutMetricData` 权限。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "cloudwatch:PutMetricData"
      ],
      "Resource": "*"
    }
  ]
}
```

------

## 向 Amazon Personalize 授予访问 Amazon S3 存储桶的权限
<a name="metric-attribution-s3-permissions"></a>

 向 Amazon Personalize 授予访问 Amazon S3 存储桶的权限：
+ 将 IAM 策略附加到您的 Amazon Personalize 服务角色，以向该角色授予针对存储桶使用 `PutObject` 操作的权限。

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

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Id": "PersonalizeS3BucketAccessPolicy",
      "Statement": [
          {
              "Sid": "PersonalizeS3BucketAccessPolicy",
              "Effect": "Allow",
              "Action": [
                  "s3:PutObject"
              ],
              "Resource": [
                  "arn:aws:s3:::{{amzn-s3-demo-bucket}}",
                  "arn:aws:s3:::{{amzn-s3-demo-bucket}}/*"
              ]
          }
      ]
  }
  ```

------
+ 将存储桶策略附加到您的输出 Amazon S3 存储桶，以向 Amazon Personalize 主体授予使用 `PutObject` 操作的权限。

   如果您使用 Amazon Key Management Service (Amazon KMS) 进行加密，则必须向 Amazon Personalize 和 Amazon Personalize IAM 服务角色授予使用您的密钥的权限。有关更多信息，请参阅 [授予 Amazon Personalize 使用您的 Amazon KMS 密钥的权限](granting-personalize-key-access.md)。

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

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Id": "PersonalizeS3BucketAccessPolicy",
      "Statement": [
          {
              "Sid": "PersonalizeS3BucketAccessPolicy",
              "Effect": "Allow",
              "Principal": {
                  "Service": "personalize.amazonaws.com"
              },
              "Action": [
                  "s3:PutObject"
              ],
              "Resource": [
                  "arn:aws:s3:::{{amzn-s3-demo-bucket}}",
                  "arn:aws:s3:::{{amzn-s3-demo-bucket}}/*"
              ]
          }
      ]
  }
  ```

------