

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

# 监控 Storage Gateway
监控 Storage Gateway

本节中的主题介绍如何使用 Amazon 监控网关 CloudWatch，包括监控缓存存储空间和其他与网关关联的资源。使用 Storage Gateway 控制台来查看网关的指标和警报。例如，您可以查看读取和写入操作中使用的字节数、读取和写入操作所花费的时间以及从 AWS 云端检索数据所花费的时间。借助指标，您可以跟踪网关的运行状况并设置警报，以便在一个或多个指标超出定义的阈值时通知您。

Storage Gateway 免费提供 CloudWatch 指标。记录为期两周的 Storage Gateway 指标。通过使用这些指标，您可以访问历史信息并更好地了解您的网关的表现。Storage Gateway 还提供 CloudWatch 警报，但高分辨率警报除外，无需额外付费。有关 CloudWatch 定价的更多信息，请参阅 [Amazon CloudWatch 定价](https://aws.amazon.com/cloudwatch/pricing/)。有关的更多信息 CloudWatch，请参阅 [Amazon CloudWatch 用户指南](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html)。

**主题**
+ [了解 CloudWatch 警报](cloudwatch-alarms.md)-了解有关 CloudWatch 警报的基本信息，包括警报状态和推荐配置。
+ [创建推荐的 CloudWatch 警报](cloudwatch-alarms-create-recommended.md)-了解如何在 File Gateway 初始设置过程中快速自动配置所有推荐的 CloudWatch 警报。
+ [创建自定义 CloudWatch警报](cloudwatch-alarms-create-alarm.md)-了解如何创建自定义 CloudWatch 警报，使用特定的评估标准来监控特定指标，从而触发警报状态并发送通知。
+ [监控您的 S3 文件网关FSx](monitoring-file-gateway.md)-了解如何查看 CloudWatch 日志和审核日志，并查找有关网关报告的特定网关和文件共享文件系统指标的信息。

# 了解 CloudWatch 警报
了解 CloudWatch 警报

CloudWatch 警报根据指标和表达式监控有关您的网关的信息。您可以为网关添加 CloudWatch 警报并在 Storage Gateway 控制台中查看其状态。有关用于监控 S3 文件网关网关的指标的更多信息，请参阅[了解网关指标](https://docs.aws.amazon.com/filegateway/latest/files3/monitoring-file-gateway.html#understanding-file-gateway-metrics)和[了解文件共享指标](https://docs.aws.amazon.com/filegateway/latest/files3/monitoring-file-gateway.html#monitoring-file-gateway-resources)。对于每个警报，您可以指定将激活其“警报”状态的条件。当处于“警报”状态时，Storage Gateway 控制台中的警报状态指示符会变成红色，便于您主动监控状态。您可以将警报配置为根据状态的持续变化自动调用操作。有关 CloudWatch 警报的更多信息，请参阅[亚马逊* CloudWatch 用户指南中的使用亚马逊 CloudWatch*警报](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html)。

**注意**  
如果您没有查看权限 CloudWatch，则无法查看警报。

对于每个激活的网关，我们建议您创建以下 CloudWatch 警报：
+ 高 IO 等待：在 15 分钟内对于 3 个数据点，`IoWaitpercent` >= 20
+ 缓存脏百分比：在 20 分钟内对于 4 个数据点，`CachePercentDirty` > 80
+ 文件上传失败：在 5 分钟内对于 1 个数据点，`FilesFailingUpload` >= 1
+ 文件共享不可用：在 5 分钟内对于 1 个数据点，`FileSharesUnavailable` >= 1
+ 运行状况通知：在 5 分钟内对于 1 个数据点，`HealthNotifications` >= 1。配置此警报时，请将**缺少数据处理**设置为 **notBreaching**。
**注意**  
仅当网关在 CloudWatch 中有先前的运行状况通知时，才能设置运行状况通知警报。

对于属于 VMware 高可用性集群 VMware 的主机平台上的网关，我们还建议使用此额外 CloudWatch 警报：
+ 可用性通知：在 5 分钟内对于 1 个数据点，`AvailabilityNotifications` >= 1。配置此警报时，请将**缺少数据处理**设置为 **notBreaching**。

下表描述了 CloudWatch 警报状态。


| 州 | 说明 | 
| --- | --- | 
|  **确定**  |  指标或表达式在定义的阈值范围内。  | 
|  **警报**  |  指标或表达式超出定义的阈值。  | 
|  **数据不足**  |  警报刚启动，指标不可用，或指标数据不足以判断警报状态。  | 
|  **无**  |  不会为网关创建警报。要创建新警报，请参阅 [为您的网关创建自定义 CloudWatch 警报](cloudwatch-alarms-create-alarm.md)。  | 
|  **Unavailable**  |  警报状态是未知的。选择 **Unavailable (不可用)** 以查看 **Monitoring (监控)** 选项卡中的错误信息。  | 

# 为您的网关创建推荐的 CloudWatch 警报
创建推荐的 CloudWatch 警报

使用 Storage Gateway 控制台创建新网关时，可以选择在初始设置过程中自动创建所有推荐的 CloudWatch 警报。有关更多信息，请参阅[配置您的 Amazon S3 文件网关](https://docs.aws.amazon.com/filegateway/latest/files3/create-gateway-file.html#configure-gateway-s3-file)。如果您想在首次完成设置后为现有网关添加或更新推荐的 CloudWatch 警报，请使用以下步骤。

**为现有网关添加或更新推荐的 CloudWatch 警报**
**注意**  
此功能需要 CloudWatch 策略权限，而这些权限*不会*作为预配置的 Storage Gateway 完全访问策略的一部分自动授予。在尝试创建推荐 CloudWatch 警报之前，请确保您的安全策略授予以下权限：  
`cloudwatch:PutMetricAlarm` - 创建警报
`cloudwatch:DisableAlarmActions` - 关闭警报操作
`cloudwatch:EnableAlarmActions` - 打开警报操作
`cloudwatch:DeleteAlarms` - 删除警报

1. 在家中打开 Storage Gateway 控制台 [https://console.aws.amazon.com/storagegateway//](https://console.aws.amazon.com/storagegateway/home/)。

1. **在页面左侧的导航窗格中，选择 Gateways，然后选择要为其创建推荐 CloudWatch 警报的网关。**

1. 在网关的**详细信息**页面上，选择**监控**选项卡。

1. 在**警报**下，选择**创建推荐警报**。自动创建推荐的警报。

   **警**报部分列出了特定网关的所有 CloudWatch 警报。在这里，您可以选择和删除一个或多个警报、打开或关闭警报操作以及创建新的警报。

# 为您的网关创建自定义 CloudWatch 警报
创建自定义 CloudWatch警报

CloudWatch 使用亚马逊简单通知服务 (Amazon SNS) Simple Notification Service 在警报状态发生变化时发送警报通知。警报会监控您指定的一段时间内的一个指标，并根据相对于给定阈值的指标值每隔若干个时间段执行一项或多项操作。操作是向 Amazon SNS 主题发送的通知。您可以在创建警报时创建 Amazon SNS 主题。 CloudWatch 有关 Amazon SNS 的更多信息，请参阅《Amazon Simple Notification Service 开发人员指南》**中的[什么是 Amazon SNS？](https://docs.aws.amazon.com/sns/latest/dg/welcome.html)

**在 Storage Gateway 控制台中创建 CloudWatch 警报**

1. 在家中打开 Storage Gateway 控制台 [https://console.aws.amazon.com/storagegateway//](https://console.aws.amazon.com/storagegateway/home/)。

1. 在导航窗格中，选择**网关**，然后选择要为其创建警报的网关。

1. 在网关详细信息页面上，选择**监控**选项卡。

1. 在 “**警报**” 下，选择 “**创建警报**” 以打开 CloudWatch 控制台。

1. 使用 CloudWatch 控制台创建所需的警报类型。您可以创建下列类型的警报：
   + 静态阈值警报：基于所选指标的设定阈值的警报。当指标在指定数量的评估周期内突破阈值时，警报将变为“警报”状态。

     要创建静态阈值警报，请参阅 *Amazon CloudWatch 用户指南*中的[基于静态阈值创建 CloudWatch 警](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ConsoleAlarms.html)报。
   + 异常检测警报：异常检测挖掘过去的指标数据并创建预期值模型。您可以为异常检测阈值设置一个值，然后在模型中 CloudWatch 使用该阈值来确定该指标的 “正常” 值范围。阈值越高，所产生的“正常”值的范围越大。您可以选择仅当指标值高于预期值范围、低于预期值范围，或出现二者情况之一时激活警报。

     要创建异常检测警报，请参阅 A *mazon CloudWatch 用户*指南中的[基于异常检测创建 CloudWatch 警](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Create_Anomaly_Detection_Alarm.html)报。
   + 指标数学表达式警报：基于数学表达式中使用的一个或多个指标的警报。您指定表达式、阈值和评估期。

     要创建指标数学表达式警报，请参阅 *Amazon CloudWatch 用户指南*中的[基于指标数学表达式创建 CloudWatch 警](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Create-alarm-on-metric-math-expression.html)报。
   + 复合警报：通过监控其他警报的警报状态来确定其警报状态的警报。复合警报可以帮助您降低警报噪音。

     要创建复合警报，请参阅 *Amazon CloudWatch 用户指南*中的[创建复合警报](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Create_Composite_Alarm.html)。

1. 在 CloudWatch 控制台中创建警报后，返回到 Storage Gateway 控制台。您可以通过执行以下操作之一查看警报：
   + 在导航窗格中，选择**网关**，然后选择要查看其警报的网关。在**详细信息**选项卡的**警报**下，选择**CloudWatch 警报**。
   + 在导航窗格中，选择**网关**，选择要查看其警报的网关，然后选择**监控**选项卡。

     **警**报部分列出了特定网关的所有 CloudWatch 警报。在这里，您可以选择和删除一个或多个警报、打开或关闭警报操作以及创建新的警报。
   + 在导航窗格中，选择**网关**，然后选择要查看其警报的网关的警报状态。

有关如何编辑或删除警报的信息，请参阅[编辑或删除 CloudWatch 警报](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Edit-CloudWatch-Alarm.html)。

**注意**  
当您使用 Storage Gateway 控制台删除网关时，与该网关关联的所有 CloudWatch 警报也会自动删除。

# 监控您的 S3 文件网关FSx


您可以使用 Amazon CloudWatch 指标和审计日志监控您 AWS Storage Gateway 的 S3 FSx 文件网关和中的相关资源。您还可以使用 “ CloudWatch 事件” 在文件操作完成后收到通知。

**Topics**
+ [

## 使用日志组获取 S3 FSx 文件网关运行状况日志 CloudWatch
](#cw-log-groups)
+ [

## 使用亚马逊 CloudWatch 指标
](#using-CloudWatch-metrics)
+ [

## 获取有关文件操作的通知
](#get-notification)
+ [

## 了解网关指标
](#understanding-file-gateway-metrics)
+ [

## 了解文件共享指标
](#monitoring-file-gateway-resources)
+ [

## 了解 S3 文件网关FSx 文件网审核日志
](#audit-logs)

## 使用日志组获取 S3 FSx 文件网关运行状况日志 CloudWatch
获取 S3 文件网关FSx 运行状况日志

您可以使用 Amaz CloudWatch on Logs 来获取有关 S3 文件网关和相关资源运行状况的信息。您可以使用日志来监控网关遇到的错误。此外，您还可以使用 Amazon CloudWatch 订阅筛选器实时自动处理日志信息。有关更多信息，请参阅 *Amazon CloudWatch 用户指南中的[通过订阅实时处理日志数据](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Subscriptions.html)。*

例如，您可以配置一个 CloudWatch 日志组来监控您的网关，并在您的 S3 文件网关无法将文件上传到 Amazon S3 存储桶时收到通知。您可以在激活网关时或在激活网关并运行后配置组。有关如何在激活网关时配置 CloudWatch 日志组的信息，请参阅[配置 Amazon S3 文件网关](create-gateway-file.md#configure-gateway-s3-file)。有关 CloudWatch 日志组的一般信息，请参阅 *Amazon CloudWatch 用户指南中的[使用日志组和日志流](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html)。*

以下是 S3 文件网关报告的一个错误的示例。

```
{
    "severity": "ERROR",
    "bucket": "bucket-smb-share2",
    "roleArn": "arn:aws:iam::123456789012:role/amzn-s3-demo-bucket",
    "source": "share-E1A2B34C",
    "type": "InaccessibleStorageClass",
    "operation": "S3Upload",
    "key": "myFolder/myFile.text",
    "gateway": "sgw-B1D123D4",
    "timestamp": "1565740862516"
}
```

此错误表示 S3 文件网关无法将对象 `myFolder/myFile.text` 上传到 Amazon S3，因为该对象已从 Amazon S3 Standard 存储类别转换为 S3 Glacier Flexible Retrieval 或 S3 Glacier Deep Archive 存储类别。

在前面的网关运行状况日志中，这些项目指定了给定的信息：
+ `source: share-E1A2B34C` 指示遇到此错误的文件共享。
+ `"type": "InaccessibleStorageClass"` 指示所发生的错误的类型。在这种情况下，当网关尝试将指定的对象上传到 Amazon S3 或从 Amazon S3 中读取时，会遇到此错误。但是，在这种情况下，对象转换为 Amazon Glacier。`"type"` 的值可以是 S3 文件网关遇到的任何错误。有关可能错误的列表，请参阅 [故障排除：文件网关问题](troubleshooting-file-gateway-issues.md)。
+  `"operation": "S3Upload"` 指示当网关尝试将该对象上传到 S3 时发生此错误。
+ `"key": "myFolder/myFile.text"` 指示导致故障的对象。
+ `gateway": "sgw-B1D123D4` 指示遇到此错误的 S3 文件网关。
+ `"timestamp": "1565740862516"` 指示发生错误的时间。

有关如何对 S3 文件网关网关可能报告的错误进行故障排除的信息，请参阅[故障排除：文件网关问题](troubleshooting-file-gateway-issues.md)。

### 在网关激活后配置 CloudWatch 日志组
为您的网关配置 CloudWatch 日志组

以下过程说明如何在激活网关后配置 CloudWatch 日志组。

**配置 CloudWatch 日志组以与您的 S3 文件网关网关配合使用**

1. 登录 AWS 管理控制台 并在[https://console.aws.amazon.com/storagegateway/家](https://console.aws.amazon.com/storagegateway/)中打开 Storage Gateway 控制台。

1. **在导航窗格中，选择 Gateways，然后选择要为其配置 CloudWatch 日志组的网关。**

1. 对于**操作**，选择**编辑网关信息**。

1. 对于**选择如何设置日志组**，选择以下选项之一：
   + **创建新的日志组**以创建新的 CloudWatch日志组。
   + **使用现有日志组**使用已存在的 CloudWatch 日志组。

     从**现有日志组列表**中选择一个日志组。
   + 如果您不想使用@@ **日志组监控网关，请停**用 CloudWatch 日志记录。

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

1. 要查看网关的运行状况日志，请执行以下操作：

   1. **在导航窗格中，选择 Gateways，然后选择您为其配置 CloudWatch 日志组的网关。**

   1. 选择 “**详细信息**” 选项卡，然后在 “Healt **h Logs**” 下，选择 “**CloudWatch日志**”。**日志组详细信息**页面将在 CloudWatch 控制台中打开。

## 使用亚马逊 CloudWatch 指标


您可以使用 AWS 管理控制台 或 CloudWatch API 获取 S3 文件网关FSx 的监控数据。控制台根据来自 CloudWatch API 的原始数据显示一系列图表。该 CloudWatch API 也可以通过其中一个[AWS SDKs](https://aws.amazon.com/tools)或 [Amazon CloudWatch API](https://aws.amazon.com/cloudwatch) 工具来使用。根据您的需求差异，您可能倾向于使用控制台中显示的图表，也可能倾向于检索自 API 的图表。

无论通过何种方法来使用指标，您都必须指定下列信息：
+ 要使用的指标维度。*维度* 是帮助您对某指标进行唯一标识的名称/值对。Storage Gateway 的维度为 `GatewayId` 和 `GatewayName`。在 CloudWatch 控制台中，您可以使用`Gateway Metrics`视图来选择网关特定的维度。有关尺寸的更多信息，请参阅 *Amazon CloudWatch 用户指南*中的[尺寸](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Dimension)。
+ 指标名称，如 `ReadBytes`。

下表总结了可供您使用的 Storage Gateway 指标数据的类型。


| Amazon CloudWatch 命名空间 | 维度 | 说明 | 
| --- | --- | --- | 
| AWS/StorageGateway |  GatewayId, GatewayName  |  这些维度筛选描述网关各个方面的指标数据。您可以通过指定和`GatewayName`维度来识别要使用的 S3 FSx 文件网关。`GatewayId` 网关的吞吐量和延迟数据基于网关中的所有文件共享。 数据在 5 分钟期间内自动可用，无需收费。  | 

网关和文件指标的使用方式类似于其他服务指标。您可以在下面所列的 CloudWatch 文档中找到一个有关某些最常见的指标任务的讨论：
+ [查看可用指标](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/viewing_metrics_with_cloudwatch.html)
+ [获取指标的统计数据](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/getting-metric-statistics.html)
+ [创建 CloudWatch 警报](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html)

## 获取有关文件操作的通知


文件操作完成后，Storage Gateway 可以启动以下 CloudWatch 事件：
+ 在网关完成从文件共享到 Amazon S3 的文件异步上传时，您会获得通知。使用 `NotificationPolicy` 参数来请求文件上传通知。这样，每次完成向 Amazon S3 上传文件时，系统都会发送一条通知。有关更多信息，请参阅 [获取文件上传通知](#get-file-upload-notification)。
+ 在网关完成从文件共享到 Amazon S3 的工作文件集异步上传时，您会获得通知。使用 [NotifyWhenUploaded](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_NotifyWhenUploaded.html)API 操作请求工作文件集上传通知。这样，工作文件集中的所有文件均已上传至 Amazon S3 后，系统会向您发送通知。有关更多信息，请参阅 [获取工作文件集上传通知](#get-working-file-set-upload-notification)。
+ 您可以在网关完成为 S3 存储桶刷新缓存后获得通知。当您通过 Storage Gateway 控制台或 API 调用[RefreshCache](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_RefreshCache.html)操作时，请在操作完成后订阅通知。有关更多信息，请参阅 [获取刷新缓存通知](#get-refresh-cache-notification)。

当您请求的文件操作完成后，Storage Gateway 会通过 “ CloudWatch 事件” 向您发送通知。您可以将 CloudWatch 事件配置为通过事件目标（例如 Amazon SNS、Amazon SQS 或函数）发送通知。 AWS Lambda 例如，您可以配置 Amazon SNS 目标以将通知发送给 Amazon SNS 使用者，例如电子邮件或文本消息。有关 CloudWatch 事件的信息，请参阅[什么是 CloudWatch 事件？](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html)

**设置 CloudWatch 事件通知**

1. 创建目标（例如 Amazon SNS 主题或 Lambda 函数），以便发生在 Storage Gateway 中请求的事件时进行调用。

1. 在 CloudWatch 事件控制台中创建规则，以便根据 Storage Gateway 中的事件调用目标。

1. 在该规则中，为事件类型创建一个事件模式。在事件与此规则模式匹配时发送通知。

1. 选择目标并配置设置。

以下示例显示了在指定网关和指定 AWS 区域中启动指定事件类型的规则。例如，您可以指定 `Storage Gateway File Upload Event` 作为事件类型。

```
{
   "source":[
      "aws.storagegateway"
   ],
   "resources":[
      "arn:aws:storagegateway:AWS Region:account-id
                 :gateway/gateway-id"
   ],
   "detail-type":[
      "Event type"
   ]
}
```

有关如何使用 CloudWatch 事件规则的信息，请参阅 *Amazon Events 用户指南中的创建在事件上触发 CloudWatch 的事*[件规则](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/Create-CloudWatch-Events-Rule.html)。 CloudWatch 

### 获取文件上传通知


对于以下两种使用案例，可以使用文件上传通知：
+ 要自动完成在云中处理上传的文件，您可以调用 `NotificationPolicy` 参数并获取通知 ID。在上传文件时发出的通知的通知 ID 与 API 返回的通知 ID 相同。如果映射此通知 ID 以跟踪您上传的文件列表，则在生成具有相同 ID 的事件时，您可以在 AWS 中启动上传文件的处理。
+ 对于内容分配使用案例，您可以有两个映射到同一 Amazon S3 存储桶的 S3 文件网关。网关 1 的文件共享客户端会将新文件上传到 Amazon S3，然后网关 2 上的文件共享客户端读取这些文件。这些文件会上传到 Amazon S3，但在网关 2 中不会显示这些文件，因为网关 2 在 Amazon S3 中使用本地缓存的文件版本。要使这些文件在网关 2 中可见，您可以使用 `NotificationPolicy` 参数来请求网关 1 在上传文件完成后向您发送文件上传通知。然后，您可以使用 CloudWatch 事件在 Gateway2 上自动发出文件共享[RefreshCache](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_RefreshCache.html)请求。[RefreshCache](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_RefreshCache.html)请求完成后，新文件将显示在 Gateway2 中。

**Example 示例 - 文件上传通知**  
以下示例显示了当事件与您创建的规则匹配 CloudWatch 时发送给您的文件上传通知。此通知采用 JSON 格式。您可以将此通知配置为以文本消息的形式传输到目标。`detail-type` 为 `Storage Gateway Object Upload Event`。  

```
{
    "version": "0",
    "id": "2649b160-d59d-c97f-3f64-8aaa9ea6aed3",
    "detail-type": "Storage Gateway Object Upload Event",
    "source": "aws.storagegateway",
    "account": "123456789012",
    "time": "2020-11-05T12:34:56Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:storagegateway:us-east-1:123456789011:share/share-F123D451",
        "arn:aws:storagegateway:us-east-1:123456789011:gateway/sgw-712345DA",
        "arn:aws:s3:::do-not-delete-bucket"
    ],
    "detail": {
        "object-size": 1024,
        "modification-time": "2020-01-05T12:30:00Z",
        "object-key": "my-file.txt",
        "event-type": "object-upload-complete",        
        "prefix": "prefix/",
        "bucket-name": "amzn-s3-demo-bucket",  
    }
}
```


| 字段名称 | 说明 | 
| --- | --- | 
| 版本 | 当前的 IAM 策略版本。 | 
| id | 标识 IAM 策略的 ID。 | 
| detail-type | 启动所发送通知的事件的描述。 | 
| source | 作为请求和通知来源的 AWS 服务。 | 
| 账户 | 生成请求和通知的 AWS 账户的 ID。 | 
| 时间 | 将文件上传到 Amazon S3 的请求的发出时间。 | 
| region | 发送请求和通知的 AWS 区域。 | 
| 资源 | 策略适用的 Storage Gateway 资源。 | 
|  object-size  |  对象的大小（以字节为单位）。  | 
| modification-time | 客户端修改文件的时间。 | 
| object-key |  文件的路径。 | 
|  event-type  |  启动通知 CloudWatch 的事件。  | 
| prefix | S3 存储桶的前缀名称。 | 
|  bucket-name  |  S3 桶的名称。  | 

### 获取工作文件集上传通知


对于以下两种使用案例，可以使用工作文件集上传通知：
+ 要自动完成在云中处理上传的文件，您可以调用 `NotifyWhenUploaded` API 并获取通知 ID。在上传工作文件集时发出的通知的通知 ID 与 API 返回的通知 ID 相同。如果将此通知 ID 映射到跟踪正在上传的文件列表，则可以在生成具有相同 ID 的事件 AWS 时启动对上传的工作文件集的处理。
+ 对于内容分配使用案例，您可以有两个映射到同一 Amazon S3 存储桶的 S3 文件网关。网关 1 的文件共享客户端会将新文件上传到 Amazon S3，然后网关 2 上的文件共享客户端读取这些文件。这些文件会上传到 Amazon S3，但在网关 2 中不会显示这些文件，因为网关 2 在 S3 中使用本地缓存的文件版本。要使文件在 Gateway2 中可见，请使用 [NotifyWhenUploaded](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_NotifyWhenUploaded.html)API 操作请求来自 Gateway1 的文件上传通知，以便在工作文件集的上传完成时通知您。然后，您可以使用 CloudWatch 事件在 Gateway2 上自动发出文件共享[RefreshCache](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_RefreshCache.html)请求。[RefreshCache](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_RefreshCache.html)请求完成后，新文件将显示在 Gateway2 中。此操作不会将文件导入网关缓存存储。仅更新缓存的清单，以反映 S3 存储桶中对象清单的变化。

**Example 示例 - 工作文件集上传通知**  
以下示例显示了一个有效的文件集上传通知，当事件与您创建的规则匹配 CloudWatch 时，该通知将通过该通知发送给您。此通知采用 JSON 格式。您可以将此通知配置为以文本消息的形式传输到目标。`detail-type` 为 `Storage Gateway File Upload Event`。  

```
{
    "version": "2012-10-17", 		 	 	 
    "id": "2649b160-d59d-c97f-3f64-8aaa9ea6aed3",
    "detail-type": "Storage Gateway File Upload Event",
    "source": "aws.storagegateway",
    "account": "123456789012",
    "time": "2017-11-06T21:34:42Z",
    "region": "us-east-2",
    "resources": [
        "arn:aws:storagegateway:us-east-2:123456789011:share/share-F123D451",
        "arn:aws:storagegateway:us-east-2:123456789011:gateway/sgw-712345DA"
    ],
    "detail": {
        "event-type": "upload-complete",
        "notification-id": "11b3106b-a18a-4890-9d47-a1a755ef5e47",
        "request-received": "2018-02-06T21:34:42Z",
        "completed": "2018-02-06T21:34:53Z"
    }
}
```


| 字段名称 | 说明 | 
| --- | --- | 
| 版本 | 当前的 IAM 策略版本。 | 
| id | 标识 IAM 策略的 ID。 | 
| detail-type | 启动所发送通知的事件的描述。 | 
| source | 作为请求和通知来源的 AWS 服务。 | 
| 账户 | 生成请求和通知的 AWS 账户的 ID。 | 
| 时间 | 将文件上传到 Amazon S3 的请求的发出时间。 | 
| region | 发送请求和通知的 AWS 区域。 | 
| 资源 | 策略适用的 Storage Gateway 资源。 | 
| event-type | 启动通知 CloudWatch 的事件。 | 
| notification-id | 为发送的通知随机生成的 ID。该 ID 采用 UUID 格式。这是在调用 `NotifyWhenUploaded` 时返回的通知 ID。 | 
| request-received | 网关收到 `NotifyWhenUploaded` 请求的时间。 | 
| completed | 当工作集中的所有文件都上传到 Amazon S3 时。 | 

### 获取刷新缓存通知


对于刷新缓存通知使用案例，您可以有两个映射到同一 Amazon S3 存储桶的 S3 文件网关，网关 1 的 NFS 客户端会将新文件上传到 S3 存储桶。这些文件会上传到 Amazon S3，但在您刷新缓存之前，它们不会出现在网关 2 中。这是因为网关 2 在 Amazon S3 中使用了本地缓存的文件版本。当刷新缓存完成时，您可能希望对 Gateway2 中的文件执行某项操作。大型文件可能需要一些时间才能在网关 2 中显示，因此您可能希望在缓存刷新完成时获得通知。您可以从 Gateway2 请求刷新缓存通知，以在所有文件都在 Gateway2 中可见时通知您。

**Example 示例 - 刷新缓存通知**  
以下示例显示了当事件与您创建的规则匹配 CloudWatch 时发送给您的刷新缓存通知。此通知采用 JSON 格式。您可以将此通知配置为以文本消息的形式传输到目标。`detail-type` 为 `Storage Gateway Refresh Cache Event`。  

```
{
    "version": "2012-10-17", 		 	 	 
    "id": "2649b160-d59d-c97f-3f64-8aaa9ea6aed3",
    "detail-type": "Storage Gateway Refresh Cache Event",
    "source": "aws.storagegateway",
    "account": "209870788375",
    "time": "2017-11-06T21:34:42Z",
    "region": "us-east-2",
    "resources": [
        "arn:aws:storagegateway:us-east-2:123456789011:share/share-F123D451",
        "arn:aws:storagegateway:us-east-2:123456789011:gateway/sgw-712345DA"
    ],
    "detail": {
        "event-type": "refresh-complete",
        "notification-id": "1c14106b-a18a-4890-9d47-a1a755ef5e47",
        "started": "2018-02-06T21:34:42Z",
        "completed": "2018-02-06T21:34:53Z",
        "folderList": [
            "/"
        ]
    }
}
```


| 字段名称 | 说明 | 
| --- | --- | 
| 版本 | 当前的 IAM 策略版本。 | 
| id | 标识 IAM 策略的 ID。 | 
| detail-type | 启动所发送通知的事件类型的描述。 | 
| source | 作为请求和通知来源的 AWS 服务。 | 
| 账户 | 生成请求和通知的 AWS 账户的 ID。 | 
|  时间  |  刷新工作集中的文件的请求的发出时间。  | 
|  region  |  发送请求和通知的 AWS 区域。  | 
|  资源  |  策略适用的 Storage Gateway 资源。  | 
| event-type | 启动通知 CloudWatch 的事件。 | 
| notification-id | 为发送的通知随机生成的 ID。该 ID 采用 UUID 格式。这是在调用 `RefreshCache` 时返回的通知 ID。 | 
| 使 | 网关收到 `RefreshCache` 请求并启动刷新的时间。 | 
| completed | 完成工作集刷新的时间。 | 
| folderList | 在缓存中刷新的文件夹的逗号分隔路径列表。默认为 ["/"]。 | 

## 了解网关指标


下表介绍了涵盖 S3 文件网关的指标。每个网关均有与其关联的一组指标。某些特定于网关的指标与某些指标同名。 file-share-specific这些指标代表同类度量，但其范围限于网关，而不是用于文件共享。

在使用特定指标前，始终指定是要处理网关还是文件共享。具体而言，在使用网关指标时，必须为要查看其指标数据的网关指定 `Gateway Name`。有关更多信息，请参阅 [使用亚马逊 CloudWatch 指标](#using-CloudWatch-metrics)。

**注意**  
某些指标仅在最近的监控期内生成了新数据时才会返回数据点。

下表描述了可用于获取有关 S3 文件网关网关的信息的指标。


| 指标 | 说明 | 
| --- | --- | 
| AuditNotifications |  此指标报告发出的审核日志数量。 单位：计数  | 
| AvailabilityNotifications |  此指标报告网关在报告期内生成的与可用性相关的运行状况通知的数量。 单位：计数  | 
| CacheFileSize |  此指标用于跟踪网关缓存中文件的大小。 使用此指标和 `Average` 统计数据来衡量网关缓存中文件的平均大小。使用此指标和 `Max` 统计数据来衡量网关缓存中文件的最大大小。 单位：字节  | 
| CacheFree |  此指标报告网关缓存中的可用字节数。 单位：字节  | 
| CacheHitPercent |  在来自网关的应用程序读取操作中，由缓存提供的操作所占百分比。样本在报告周期结束时采用。 当网关没有收到任何应用程序读取操作时，此指标会报告为 100%。 单位：百分比  | 
| CachePercentDirty |  网关缓存中尚未持久化的总体百分比。 AWS样本在报告周期结束时采用。 将此指标与 `Sum` 统计数据结合使用。 理想情况下，此指标应保持在较低水平。 单位：百分比  | 
| CachePercentUsed  |  整个网关使用的数据缓存的百分比。样本在报告周期结束时采用。 单位：百分比  | 
| CacheUsed |  此指标报告网关缓存中的已用字节数。 单位：字节  | 
| CloudBytesDownloaded |  在报告期内，网关从中 AWS 下载的总字节数。 将此指标与 `Sum` 统计数据结合使用可测量吞吐量，将其与 `Samples` 统计数据结合使用可测量 IOPS。 单位：字节  | 
| CloudBytesUploaded |  网关在报告期内上传到的 AWS 总字节数。 将此指标与`Sum`统计数据结合使用以衡量吞吐量，将此指标与`Samples`统计数据结合使用以衡量每秒 input/output 操作数 (IOPS)。 单位：字节  | 
| FilesFailingUpload |  此指标跟踪未能上传到 AWS的文件数。这些文件将生成运行状况通知，其中包含有关该问题的更多信息。 将此指标与 `Sum` 统计数据结合使用，可以显示当前无法上传到 AWS的文件数。 单位：计数  | 
| FileSharesUnavailable |  此指标提供了此网关上处于**不可用**状态的文件共享数量。 如果此指标报告任何文件共享不可用，则网关很可能存在问题，这可能会导致工作流中断。建议在此指标报告非零值时创建警报。 单位：计数  | 
| FilesRenamed |  此指标跟踪报告期内重命名的文件数。 单位：计数  | 
| HealthNotifications |  此指标报告了此网关在报告期内生成的运行状况通知的数量。 单位：计数  | 
| IndexEvictions |  此指标报告从文件元数据的缓存索引中移出其元数据以便为新条目腾出空间的文件数。网关维护此元数据索引，该索引是根据需要从 AWS 云端填充的。 单位：计数  | 
| IndexFetches |  此指标报告已提取元数据的文件数。网关维护文件元数据的缓存索引，该索引是根据需要从 AWS 云端填充的。 单位：计数  | 
| IoWaitPercent |  此指标报告 CPU 等待本地磁盘返回响应所花费的时间占总时间的百分比。 单位：百分比  | 
| MemTotalBytes |  此指标报告网关上的总内存量。 单位：字节  | 
| MemUsedBytes |  此指标报告网关上的已用内存量。 单位：字节  | 
| NfsSessions |  此指标报告网关上处于活动状态的 NFS 会话数量。 单位：计数  | 
| RootDiskFreeBytes |  此指标报告网关的根磁盘上的可用字节数。 如果此指标报告的空闲空间少于 20 GB，则应增加根磁盘的大小。 要增加根磁盘的大小，可以增加 VM 上现有根磁盘的大小。当 VM 重新启动时，网关会识别根磁盘上增加的大小。 单位：字节  | 
| S3GetObjectRequestTime |  此指标报告网关完成 S3 获取对象请求的时间。 单位：毫秒  | 
| S3PutObjectRequestTime |  此指标报告网关完成 S3 放置对象请求的时间。 单位：毫秒  | 
| S3UploadPartRequestTime |  此指标报告网关完成 S3 上传段请求的时间。 单位：毫秒  | 
| SmbV1Sessions |  该指标报告网关上处于活动状态的 SMBv1 会话数。 单位：计数  | 
| SmbV2Sessions |  该指标报告网关上处于活动状态的 SMBv2 会话数。 单位：计数  | 
| SmbV3Sessions |  该指标报告网关上处于活动状态的 SMBv3 会话数。 单位：计数  | 
| TotalCacheSize |  此指标报告缓存的总大小。 单位：字节  | 
| UserCpuPercent |  此指标报告网关处理所花费的时间百分比。 单位：百分比  | 

## 了解文件共享指标


您可以在下面找到有关包含文件共享的 Storage Gateway 指标的信息。每个文件共享均有与其关联的一组指标。某些特定于文件共享的指标与某些特定于网关的指标同名。这些指标代表同类度量，但其范围限于文件共享。

始终在使用指标前指定要使用网关还是文件共享指标。尤其是使用文件共享指标时，您必须指定标识希望查看其指标的文件共享的 `File share ID`。有关更多信息，请参阅 [使用亚马逊 CloudWatch 指标](#using-CloudWatch-metrics)。

**注意**  
某些指标仅在最近的监控期内生成了新数据时才会返回数据点。

下表描述了可用来获取文件共享相关信息的 Storage Gateway 指标。


| 指标 | 说明 | 
| --- | --- | 
| CacheHitPercent |  在来自文件共享的应用程序读取操作中，由缓存提供的操作所占百分比。样本在报告周期结束时采用。 当文件共享没有收到任何应用程序读取操作时，此指标会报告为 100%。 单位：百分比  | 
| CachePercentDirty |  在网关缓存中尚未持久化到 AWS的数据中，文件共享产生的部分所占比例。样本在报告周期结束时采用。 将此指标与 `Sum` 统计数据结合使用。 理想情况下，此指标应保持在较低水平。 使用网关的 `CachePercentDirty` 指标来查看尚未持久化到 AWS的网关缓存的总体比例。 单位：百分比  | 
| CachePercentUsed |  整个网关使用的数据缓存的百分比。样本在报告周期结束时采用。这个文件共享特定指标报告的值与相应的网关特定指标报告的值相同。 单位：百分比  | 
| CloudBytesUploaded |  网关在报告期内上传到的 AWS 总字节数。 将此指标与 `Sum` 统计数据结合使用可测量吞吐量，将其与 `Samples` 统计数据结合使用可测量 IOPS。 单位：字节  | 
| CloudBytesDownloaded |  在报告期内，网关从中 AWS 下载的总字节数。 将此指标与`Sum`统计数据结合使用以衡量吞吐量，将此指标与`Samples`统计数据结合使用以衡量每秒 input/output 操作数 (IOPS)。 单位：字节  | 
| FilesFailingUpload |  此指标跟踪未能上传到 AWS的文件数。这些文件将生成运行状况通知，其中包含有关该问题的更多信息。 将此指标与 `Sum` 统计数据结合使用，可以显示当前无法上传到 AWS的文件数。 单位：计数  | 
| ReadBytes  |  文件共享的报告周期内从本地应用程序读取的总字节数。 将此指标与 `Sum` 统计数据结合使用可测量吞吐量，将其与 `Samples` 统计数据结合使用可测量 IOPS。 单位：字节  | 
| WriteBytes |  报告周期内写入到场内应用程序的总字节数。 将此指标与 `Sum` 统计数据结合使用可测量吞吐量，将其与 `Samples` 统计数据结合使用可测量 IOPS。 单位：字节  | 

## 了解 S3 文件网关FSx 文件网审核日志


Amazon S3 文件网关（S3 文件网关）审核日志为您提供有关用户访问文件共享中的文件和文件夹的详细信息。您可以使用这些日志来监控用户活动，并在识别到不当的活动模式时采取措施。

**操作**

下表描述了 S3 文件网关FSx 审核日志文件访问操作。


| 操作名称 | 定义 | 
| --- | --- | 
| 读取数据 | 读取文件的内容。 | 
| 写入数据 | 更改文件的内容。 | 
| Create | 创建新文件或文件夹。 | 
| 重命名 | 重命名现有文件或文件夹。 | 
| 删除 | 删除文件或文件夹。 | 
| 写入属性 | 更新文件或文件夹的元数据（ACLs、所有者、群组、权限）。 | 

**属性**

下表说明了 S3 文件网关审核日志文件访问属性。


| 属性 | 定义 | 
| --- | --- | 
| accessMode | 对象的权限设置。 | 
| accountDomain（仅限 SMB） | 客户端账户所属的 Active Directory (AD) 域。 | 
| accountName（仅限 SMB） | 客户端的 Active Directory 用户名。 | 
| bucket | S3 桶名称。 | 
| clientGid（仅限 NFS） | 访问对象的用户组的标识符。 | 
| clientUid（仅限 NFS） | 访问对象的用户的标识符。 | 
| ctime | 在此时间修改对象的内容或元数据，由客户端设置。 | 
| groupId | 对象的组拥有者的标识符。 | 
| fileSizeInBytes | 文件大小，以字节为单位，由客户端在文件创建时设置。 | 
| gateway | Storage Gateway ID。 | 
| mtime | 在此时间修改对象的内容，由客户端设置。 | 
| newObjectName | 新对象重命名后的完整路径。 | 
| objectName | 对象的完整路径。 | 
| objectType | 定义对象是文件还是文件夹。 | 
| operation | 对象访问操作的名称。 | 
| ownerId | 对象拥有者的标识符。 | 
| securityDescriptor（仅限 SMB） | 显示在对象上设置的自由访问控制列表 (DACL)，使用 SDDL 格式。 | 
| shareName | 正在访问的共享的名称。 | 
| source | 所审计的文件共享的 ID。 | 
| sourceAddress | 文件共享客户端计算机的 IP 地址。 | 
| status | 操作的状态。仅记录成功（一般不记录失败，但会记录由于权限被拒绝而引发的失败）。 | 
| timestamp | 发生操作的时间，基于网关的操作系统时间戳。 | 
| version | 审核日志格式的版本。 | 

**每个操作记录的属性**

下表说明了在各个文件访问操作中记录的 S3 文件网关审核日志属性。


|  | 读取数据 | 写入数据 | 创建文件夹 | 创建文件 | 重命名文件/文件夹 | 删除文件/文件夹 | 写入属性（更改 ACL - **仅限 SMB**） | 写入属性（chown） | 写入属性（chmod） | 写入属性（chgrp） | 
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | 
| accessMode |  |  | X | X |  |  |  |  | X |  | 
| accountDomain（仅限 SMB） | X | X | X | X | X | X | X | X | X | X | 
| accountName（仅限 SMB） | X | X | X | X | X | X | X | X | X | X | 
| bucket | X | X | X | X | X | X | X | X | X | X | 
| clientGid（仅限 NFS） | X | X | X | X | X | X |  | X | X | X | 
| clientUid（仅限 NFS） | X | X | X | X | X | X |  | X | X | X | 
| ctime |  |  | X | X |  |  |  |  |  |  | 
| groupId |  |  | X | X |  |  |  |  |  |  | 
| fileSizeInBytes |  |  |  | X |  |  |  |  |  |  | 
| gateway | X | X | X | X | X | X | X | X | X | X | 
| mtime |  |  | X | X |  |  |  |  |  |  | 
| newObjectName |  |  |  |  | X |  |  |  |  |  | 
| objectName | X | X | X | X | X | X | X | X | X | X | 
| objectType | X | X | X | X | X | X | X | X | X | X | 
| operation | X | X | X | X | X | X | X | X | X | X | 
| ownerId |  |  | X | X |  |  |  | X |  |  | 
| securityDescriptor（仅限 SMB） |  |  |  |  |  |  | X | X |  |  | 
| shareName | X | X | X | X | X | X | X | X | X | X | 
| source | X | X | X | X | X | X | X | X | X | X | 
| sourceAddress | X | X | X | X | X | X | X | X | X | X | 
| status | X | X | X | X | X | X | X | X | X | X | 
| timestamp | X | X | X | X | X | X | X | X | X | X | 
| version | X | X | X | X | X | X | X | X | X | X | 

# 为 S3 文件网关创建缓存报告
创建缓存报告

S3 文件网关可为当前位于特定文件共享的本地上传缓存中的文件生成元数据报告。您可以应用筛选条件和其他标准来确定哪些特定类型的缓存文件出现在报告中。您可以使用此报告帮助确定和解决网关问题。例如，如果您无法将文件从网关上传到 Amazon S3，则可以生成一份报告，列出未能上传的具体文件以及上传失败的原因。该报告是一个 CSV 文件，其中包含与您指定的筛选参数集匹配的文件列表。输出文件作为 Amazon S3 对象存储在您在配置报告时指定的存储桶位置。要使用 AWS Storage Gateway API 创建缓存报告，请参阅 *Storage Gateway API 参考[StartCacheReport](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_StartCacheReport.html)*中的。要在 Storage Gateway 控制台中创建缓存报告，请按以下步骤操作。

**先决条件**
+ 您的网关必须对要存储缓存报告的 Amazon S3 存储桶具有 `s3:PutObject` 和 `s3:AbortMultipartUpload` 权限。
+ 当前不能有其他针对该文件共享的缓存报告正在生成中。
+ 文件共享的现有缓存报告必须少于 10 个。
+ 网关必须处于联机状态并已连接到 AWS。
+ 网关根磁盘必须至少有 20 GB 的空闲空间。

**使用 Storage Gateway 控制台创建缓存报告**

1. 在家中打开 Storage Gateway 控制台 [https://console.aws.amazon.com/storagegateway//](https://console.aws.amazon.com/storagegateway/home/)。

1. 在页面左侧的导航窗格中，选择**文件共享**，然后选择要为其创建缓存报告的文件共享。

1. 从**操作**下拉菜单中，选择**创建缓存报告**。

1. 对于 **Amazon S3 位置**，输入 Amazon S3 存储桶和前缀，这指明了您希望用来在 Amazon S3 中保存已完成的缓存报告 CSV 文件对象的位置。要从现有 Amazon S3 存储中选择存储桶和前缀，请选择**浏览 S3**。

1. 对于 **IAM 角色**，请执行以下任一操作来指定授予文件网关权限以生成和存储缓存报告的 IAM 角色：
   + 要指定现有 IAM 角色，请从下拉列表中选择一个角色。
   + 要手动创建新 IAM 角色，请选择**创建角色**，然后使用 IAM 控制台创建新角色。
**注意**  
您指定的 IAM 角色必须具有以下权限，才能将对象写入报告存储桶 **Amazon S3 位置**，并停止向报告存储桶进行分段上传：  
`s3:PutObject`
`s3:AbortMultipartUpload`
该角色还必须允许 `storagegateway.amazonaws.com` 服务使用 `sts:AssumeRole` 操作代入角色。

1. 对于**报告筛选器**，请执行以下任一操作以确定缓存报告中将包括哪些文件：
   + 要包括当前无法上传到 Amazon S3 的所有缓存文件，请选择**所有文件上传失败**。
   + 要仅包括因特定原因而无法上传到 Amazon S3 的文件，请选择**仅限特定的上传失败原因**。然后，在**失败原因**中，选择以下一个或多个原因：
     + 无法访问的存储类别：网关无法访问在其中存储了对象的 Amazon S3 存储类别。有关更多信息，请参阅[错误： InaccessibleStorageClass](https://docs.aws.amazon.com/filegateway/latest/files3/troubleshooting-file-gateway-issues.html#troubleshoot-logging-errors-inaccessiblestorageclass)。
     + 对象状态无效：网关上文件的状态与其在 Amazon S3 中的状态不匹配。有关更多信息，请参阅[错误： InvalidObjectState](https://docs.aws.amazon.com/filegateway/latest/files3/troubleshooting-file-gateway-issues.html#troubleshoot-logging-errors-invalidobjectstate)。
     + 对象丢失：该对象已在 Amazon S3 中删除或移动。有关更多信息，请参阅[错误： ObjectMissing](https://docs.aws.amazon.com/filegateway/latest/files3/troubleshooting-file-gateway-issues.html#troubleshoot-logging-errors-objectmissing)。
     + S3 拒绝访问：Amazon S3 存储桶访问 IAM 角色不支持网关执行上传操作。有关更多信息，请参阅[错误：S3 AccessDenied](https://docs.aws.amazon.com/filegateway/latest/files3/troubleshooting-file-gateway-issues.html#troubleshoot-logging-errors-s3accessdenied)。
**注意**  
**文件上传失败**标志每 24 小时重置一次，并在网关重启期间重置一次。如果此报告在重置后但在再次标志之前捕获了文件，则不会将其报告为**文件上传失败**。

1. 对于**使用 VPC 端点连接到 S3？**，请执行以下操作之一来指定网关将如何连接到 Amazon S3 存储桶：
   + 要在不使用 Amazon VPC 的情况下直接连接，请选择**直接连接到存储桶**。
   + 要浏览现有 Amazon VPC 端点的列表，请选择**选择 VPC 端点**，然后从显示的 **VPC 端点**下拉列表中指定一个端点。
   + 要通过其 DNS 名称来指定现有 Amazon VPC 端点，请选择**输入 VPC 端点 DNS 名称**，然后在显示的 **VPC 端点 DNS 名称**字段中输入 DNS 名称。
**注意**  
如果在正常运行时您的文件共享使用 VPC 端点连接到 Amazon S3，建议您在配置缓存报告时使用相同的 VPC。如果网关出于任何原因（包括 VPC 配置无效）而无法连接到 Amazon S3 存储桶，则缓存报告创建会失败。

1. （可选）在**标签 - 可选**下，选择**添加新标签**，然后输入缓存报告的**键**和**值**。

   标签是区分大小写的键值对，有助于您对 Storage Gateway 资源进行分类。添加标签可以更轻松地筛选和搜索缓存报告。您可以重复此步骤以添加至多 50 个标签。

1. 完成后，选择**创建报告**。

   Storage Gateway 开始生成报告。您可以在文件共享详细信息页面的**缓存报告**选项卡上查看进度和状态。

# 查看和管理 S3 文件网关的缓存报告
管理缓存报告

缓存报告根据您指定的筛选条件和标准，列出当前在特定文件共享的本地缓存中的文件。您可以使用 AWS Storage Gateway API 或 Storage Gateway 控制台查看特定文件共享的现有缓存报告列表、检查报告进度和状态以及删除不再需要的报告。

要使用 API 管理缓存报告，请参阅《Storage Gateway API 参考》**中的以下部分：
+ [ListCacheReports](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_ListCacheReports.html)
+ [DescribeCacheReport](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_DescribeCacheReport.html)
+ [CancelCacheReport](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_CancelCacheReport.html)
+ [DeleteCacheReport](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_DeleteCacheReport.html)

要在 Storage Gateway 控制台中管理缓存报告，请按以下步骤操作。

**使用 Storage Gateway 控制台管理缓存报告**

1. 在家中打开 Storage Gateway 控制台 [https://console.aws.amazon.com/storagegateway//](https://console.aws.amazon.com/storagegateway/home/)。

1. 在页面左侧的导航窗格中，选择**文件共享**，然后选择要为其管理缓存报告的文件共享。

1. 在文件共享的**详细信息**页面上，选择**缓存报告**选项卡。此选项卡列出了文件共享的现有缓存报告，并提供有关存储在 Amazon S3 中的报告文件的状态、进度和对象路径的信息。

1. 请执行以下操作之一：
   + 要查看特定报告的其他详细信息（例如报告 ARN 和相关标签），请从**报告 ID** 列中选择一个报告。
   + 要指定同时进行管理的多个报告，请使用复选框列选择报告。

1. 要管理一个或多个报告，请从**操作**下拉菜单中选择以下选项之一：
   + 删除缓存报告：这将从 Storage Gateway 数据库中删除缓存报告的记录。删除过时缓存报告的记录，为新报告腾出空间。每个文件共享在任何时候最多可以有 10 个现有缓存报告。
**注意**  
使用此程序删除缓存报告记录**不会**从 Amazon S3 中删除报告文件对象。
   + 取消报告：这会取消当前正在生成的报告。如果您在配置报告时出错了，或者报告花费了异常长的时间仍未完成，请取消正在生成的报告。出现提示时，确认取消操作。
**注意**  
根据缓存中的文件数，完成时间可能会有很大差异。通常，大多数报告会在 5 分钟内完成。

   Storage Gateway 控制台会显示一条消息，指示取消或删除操作的结果。

# 了解 S3 文件网关缓存报告中提供的信息
了解缓存报告

缓存报告根据您指定的筛选条件和标准，列出当前在特定文件共享的本地缓存中的文件。每个缓存报告包含以下信息：
+ **存储桶**：与文件共享关联的 Amazon S3 存储桶或接入点。
+ **S3 ObjectKey** — 存储此文件的数据和元数据的 Amazon S3 对象。此对象包含已上传到 S3 的最新数据，但缺少未能上传到 S3 的数据。
+ **FilePath**— 网关缓存中文件条目的文件路径。在挂载和浏览文件共享时，可以在此处找到文件。
+ **RenamedTo**— 重命名文件的新路径。在文件共享上重命名文件时，网关需要跟踪文件的旧位置和新位置。此字段显示文件移动后的位置，可帮助您跟踪文件重命名操作，即使文件已多次重命名也可跟踪。当您需要了解文件共享中的文件如何与 Amazon S3 存储桶中的对象对应时，此信息特别有用。

  以下示例显示了一个复杂场景的缓存报告条目，该场景涉及直接在 Amazon S3 中覆盖文件，同时还通过文件网关对文件进行重命名。在这种情况下，网关将文件 `A.txt` 上传到 S3，然后移出文件内容以在本地缓存中腾出空间。然后，直接在 S3 中（而不是通过网关执行操作）覆盖关联的 S3 对象，由于 S3 对象与网关的期望不匹配，所以这会导致出现 `InvalidObjectState` 错误。同时，通过网关将文件 `A.txt` 重命名为 `B.txt`。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/filegateway/latest/files3/understand-cache-reports.html)
+ **类型**：用于标识该条目是 `FILE` 还是 `DIRECTORY`。
+ **IsDirty**— 报告文件`TRUE`是否有任何类型的更改尚未上传到 Amazon S3。这包括对元数据（例如文件名和 read/write 权限）的更改，即使文件的数据没有更改。
+ **IsDataDirty**— 报告文件数据`TRUE`是否有更改但尚未上传到 Amazon S3。
+ **IsDeleted**— 报告文件`TRUE`是否已在网关上删除。如果文件标记为已删除，则该文件将始终被标记为“脏”。
+ **IsFailingToUpload**— 报告将文件上传到 Amazon S3 时`TRUE`是否存在问题。此状态每 24 小时重置一次，以便让网关可以重试上传并检查问题是否已解决。对于未能上传的文件，网关会拒绝任何新的写入操作。如果网关缓存中还没有整个文件，则网关也会拒绝读取操作。
+ **UploadError**— 导致文件无法上传到 Amazon S3 的错误。有关解决这些错误的更多信息和建议的步骤，请参阅[故障排除：文件网关问题](https://docs.aws.amazon.com/filegateway/latest/files3/troubleshooting-file-gateway-issues.html)。
+ **SizeInBytes**— 文件的总大小。
+ **IsWholeFileInCache**— 报告文件的所有数据当前`TRUE`是否存储在网关缓存中。对于未能上传到 Amazon S3 的文件，如果此项为 TRUE``，则网关将允许读取该文件。