

# 通过控制台和 API 使用 Amazon S3 Storage Lens 存储统计管理工具
<a name="S3LensExamples"></a>

Amazon S3 Storage Lens 存储统计管理工具是一项云存储分析功能，您可以使用它在整个组织范围内了解对象存储的使用情况和活动。您可以使用 S3 Storage Lens 存储统计管理工具指标生成摘要见解，例如，了解整个组织中有多少存储空间，或增长最快的桶和前缀是哪些。您还可以使用 S3 Storage Lens 存储统计管理工具指标来识别成本优化机会，实施数据保护和安全最佳实践，并提高应用程序工作负载的性能。例如，您可以识别没有 S3 生命周期规则的桶，使超过 7 天的未完成分段上传过期。您还可以识别未遵循数据保护最佳实践（例如使用 S3 复制或 S3 版本控制）的桶。S3 Storage Lens 存储统计管理工具还分析指标以提供上下文建议，您可以使用这些建议来优化存储成本并应用最佳实践来保护数据。

S3 Storage Lens 存储统计管理工具聚合您的指标，并在 Amazon S3 控制台的 **Buckets**（桶）页上的 **Account snapshot**（账户快照）部分中显示此信息。S3 Storage Lens 存储统计管理工具还提供了一个交互式控制面板，您可以使用它来可视化见解和趋势，标记异常值，并接收有关优化存储成本和应用数据保护最佳实践的建议。控制面板提供深入分析选项，用于在组织、账户、AWS 区域、存储类、存储桶、前缀或 Storage Lens 组级别生成和可视化见解。您还可以将 CSV 或 Parquet 格式的每日指标报告发送到 S3 通用存储桶，或者将指标直接导出到 AWS 托管的 S3 表存储桶。

**注意**  
Storage Lens 存储统计管理工具仅聚合 [S3 通用存储桶](UsingBucket.md)的指标。

以下部分包含创建、更新和查看 S3 Storage Lens 存储统计管理工具配置以及执行与该功能相关的操作的示例。如果您在 AWS Organizations 中使用 S3 Storage Lens 存储统计管理工具，这些示例还涵盖了这些使用案例。请替换示例中所有占位符的值。

**Topics**
+ [创建 Amazon S3 Storage Lens 存储统计管理工具控制面板](storage_lens_creating_dashboard.md)
+ [更新 Amazon S3 Storage Lens 存储统计管理工具控制面板](storage_lens_editing.md)
+ [禁用 Amazon S3 Storage Lens 存储统计管理工具控制面板](storage_lens_disabling.md)
+ [删除 Amazon S3 Storage Lens 存储统计管理工具控制面板](storage_lens_deleting.md)
+ [列出 Amazon S3 Storage Lens 存储统计管理工具控制面板](storage_lens_list_dashboard.md)
+ [查看 Amazon S3 Storage Lens 存储统计管理工具控制面板配置详细信息](storage_lens_viewing.md)
+ [使用 S3 Storage Lens 存储统计管理工具管理 AWS 资源标签](storage-lens-groups-manage-tags-dashboard.md)
+ [使用 Amazon S3 Storage Lens 存储统计管理工具的帮助程序文件](S3LensHelperFilesCLI.md)

# 创建 Amazon S3 Storage Lens 存储统计管理工具控制面板
<a name="storage_lens_creating_dashboard"></a>

可以创建其它 S3 Storage Lens 存储统计管理工具自定义控制面板，其范围可以限定为涵盖 AWS Organizations 中您的组织，或者账户中的特定 AWS 区域或存储桶。

**注意**  
对控制面板配置所做的任何更新最长可能需要 48 小时才能准确显示或可视化。

## 使用 S3 控制台
<a name="storage_lens_console_creating"></a>

使用以下步骤在 Amazon S3 控制台中创建 Amazon S3 Storage Lens 存储统计管理工具控制面板。

**步骤 1：配置常规设置**

1. 登录到 AWS 管理控制台，然后通过以下网址打开 Amazon S3 控制台：[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 在页面顶部的导航栏中，选择当前所显示 AWS 区域的名称。接下来，选择要切换到的区域。

1. 在导航窗格中，在 **S3 Storage Lens 存储统计管理工具**下选择**控制面板**。

1. 选择**创建控制面板**。

1. 在**控制面板**页面的**常规**部分中，执行以下操作：

   1. 查看控制面板的**主区域**。主区域是在其中存储此 Storage Lens 存储分析功能控制面板的配置和指标的 AWS 区域。

   1. 输入控制面板名称。

      控制面板名称必须少于 65 个字符，且不得包含特殊字符或空格。
**注意**  
创建控制面板后，您无法更改此控制面板名称。

   1. 选择**启用**可在控制面板中显示更新的每日指标。

   1. （可选）您可以选择将**标签**添加到控制面板。您可以使用标签管理控制面板的权限并跟踪 S3 Storage Lens 存储统计管理工具的成本。有关更多信息，请参阅《IAM 用户指南》**中的[使用标签控制对 AWS 资源的访问](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html)以及《AWS Billing 用户指南》**中的[使用 AWS 生成的标签](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/aws-tags.html)。
**注意**  
您最多可以在控制面板配置中添加 50 个标签。

1. 选择**下一步**以保存您的更改并继续。

**步骤 2：定义控制面板范围**

1. 在**控制面板范围**部分，选择希望 S3 Storage Lens 存储统计管理工具在控制面板中包括或排除的区域和存储桶。

1. 在所选区域中选择希望 S3 Storage Lens 存储统计管理工具包括或排除的桶。您可以包括或排除桶，但不能同时包括和排除桶。创建组织级控制面板时，此选项不可用。
**注意**  
您可以包括或排除区域和桶。在组织中跨成员账户创建组织级控制面板时，此选项仅限于“区域”。
您最多可以选择 50 个桶来包括或排除。

1. 选择**下一步**以保存您的更改并继续。

**步骤 3：选择 Storage Lens 存储统计管理工具套餐**

1. 在 **Storage Lens 存储统计管理工具套餐**部分，选择要用于此控制面板的功能聚合套餐。

   1. 要包括在存储桶级别聚合且可在 14 天内供查询的免费指标，请选择**免费套餐**。

   1. 要启用高级指标，请选择**高级套餐**。这些选项包括前缀或 Storage Lens 组聚合、Amazon CloudWatch 发布、扩展前缀报告和情境化建议。数据可查询 15 个月。高级指标和建议需要额外付费。有关更多信息，请参阅 [Amazon S3 定价](https://aws.amazon.com/s3/pricing/)。

      有关高级指标和免费指标的更多信息，请参阅[指标选择](storage_lens_basics_metrics_recommendations.md#storage_lens_basics_metrics_selection)。

1. 在**高级指标类别**下，选择您要启用的指标类别：
   + **活动指标**
   + **Detailed status code metrics（详细的状态代码指标**
   + **成本优化指标**
   + **数据保护指标**
   + **性能指标**

   要预览每个类别中包含哪些指标，请使用指标类别复选框列表下方的下拉箭头按钮。有关指标类别的更多信息，请参阅[指标类别](storage_lens_basics_metrics_recommendations.md#storage_lens_basics_metrics_types)。要获得指标的完整列表，请参阅 [Amazon S3 Storage Lens 存储统计管理工具指标词汇表](storage_lens_metrics_glossary.md)。

1. 选择或指定**前缀分隔符**来区分每个前缀中的级别。此值用来标识每个前缀级别。Amazon S3 中的默认值为“`/`”字符，但是您的存储结构可能会使用其他分隔符字符。

1. 选择**下一步**以保存您的更改并继续。

**步骤 4：（可选）选择指标聚合**

1. 在**其他指标聚合**下，选择要聚合的指标：
   + Prefix aggregation（前缀聚合）
   + Storage Lens 组聚合

1. 如果您启用了**前缀聚合**，请为控制面板指定最小**前缀阈值**和**前缀深度**。然后选择**下一步**以保存并继续。
**注意**  
**前缀深度**设置决定 S3 Storage Lens 存储统计管理工具分析对象前缀的层次深度，最大限制为 10 级。**前缀阈值**指定一个前缀在存储总量中必须占有的最低百分比，只有超过该阈值的前缀才会包含在 Storage Lens 存储统计管理工具指标中。

1. 如果您已启用 **Storage Lens 组聚合**，请选择以下选项之一：
   + **包括 Storage Lens 组**
   + **排除 Storage Lens 组**

1. 当您在聚合中包括 Storage Lens 组时，您可以**包括主区域中的所有 Storage Lens 组**，也可以指定要包括的 Storage Lens 组。

1. 选择**下一步**以保存您的更改并继续。

**步骤 5：（可选）选择指标导出和发布设置**

1. 如果您想在 CloudWatch 控制面板中访问 Storage Lens 存储统计管理工具指标，请在**指标发布**下选择 **CloudWatch 发布**。
**注意**  
前缀级别的指标在 CloudWatch 中不可用。

1. 在**指标导出**下，选择要每天导出的 Storage Lens 存储统计管理工具控制面板数据：
   + **默认指标报告**
   + **扩展前缀指标报告**

1. （可选）如果您选择了**默认指标报告**，则在**默认指标报告**设置中，选择存储桶类型。您可以将报告导出到通用 Amazon S3 存储桶或 AWS 托管的 S3 表存储桶。根据所选存储桶类型，更新**通用存储桶目标设置**或**表存储桶目标设置**选项。
**注意**  
**默认指标报告**仅包含在前缀聚合设置中所设定的阈值和深度范围内的前缀。  
如果您选择指定加密密钥，则必须选择 AWS KMS 密钥（SSE-KMS）或 Amazon S3 托管密钥（SSE-S3）。如果您的目标存储桶策略要求加密，则必须为指标导出提供加密密钥。如果没有加密密钥，导出到 S3 会失败。有关更多信息，请参阅 [使用 AWS KMS key 加密您的指标导出](storage_lens_encrypt_permissions.md)。

1. （可选）如果您选择了**扩展前缀指标报告**，请在**扩展前缀指标报告**设置中，选择存储桶类型。您可以将报告导出到通用 Amazon S3 存储桶或只读 S3 表存储桶。根据所选存储桶类型，更新**通用存储桶目标设置**或**表存储桶目标设置**。
**注意**  
**扩展前缀指标报告**包括在控制面板范围内指定的所有选定存储桶中的所有前缀，前缀深度最多为 50 级。  
如果您选择指定加密密钥，则必须选择 AWS KMS 密钥（SSE-KMS）或 Amazon S3 托管密钥（SSE-S3）。如果您的目标存储桶策略要求加密，则必须为指标导出提供加密密钥。如果没有加密密钥，导出到 S3 会失败。有关更多信息，请参阅 [使用 AWS KMS key 加密您的指标导出](storage_lens_encrypt_permissions.md)。

1. 选择**下一步**以保存您的更改并继续。

1. 检查**查看并创建**页面上的所有内容。如果无需进行其他更改，请选择**下一步**以保存更改并创建控制面板。

**步骤 6：检查控制面板配置并创建控制面板**

1. 检查**常规**部分中的设置。选择**编辑**以进行任何更改。

1. 检查**控制面板范围**部分中的设置。选择**编辑**以进行任何更改。

1. 检查 **Storage Lens 存储统计管理工具套餐**部分中的设置。选择**编辑**以进行任何更改。

1. 检查**指标聚合**部分中的设置。选择**编辑**以进行任何更改。

1. 检查**指标导出**部分中的设置。选择**编辑**以进行任何更改。

1. 检查并确认所有控制面板配置设置后，选择**提交**以创建控制面板。

在您成功创建新的 Storage Lens 存储统计管理工具控制面板后，您可以在 Storage Lens 存储统计管理工具**控制面板**页面下查看列出的新控制面板。

## 使用 AWS CLI
<a name="S3PutStorageLensConfigurationTagsCLI"></a>

**Example**  
以下示例命令创建带标签的 Amazon S3 Storage Lens 存储统计管理工具配置。要使用这些示例，请将 `user input placeholders` 替换为您自己的信息。  

```
aws s3control put-storage-lens-configuration --account-id=111122223333 --config-id=example-dashboard-configuration-id --region=us-east-1 --storage-lens-configuration=file://./config.json --tags=file://./tags.json
```

**Example**  
以下示例命令创建不带标签的 Amazon S3 Storage Lens 存储统计管理工具配置。要使用这些示例，请将 `user input placeholders` 替换为您自己的信息。  

```
aws s3control put-storage-lens-configuration --account-id=222222222222 --config-id=your-configuration-id --region=us-east-1 --storage-lens-configuration=file://./config.json
```

## 使用适用于 Java 的 AWS SDK
<a name="S3CreateandUpdateStorageLensConfigurationJava"></a>

**Example – 创建和更新 Amazon S3 Storage Lens 存储统计管理工具配置**  
以下示例在适用于 Java 的 SDK 中创建和更新 Amazon S3 Storage Lens 存储统计管理工具配置：  

```
package aws.example.s3control;

import software.amazon.awssdk.awscore.exception.AwsServiceException;
import software.amazon.awssdk.core.exception.SdkClientException;
import software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.s3control.S3ControlClient;
import software.amazon.awssdk.services.s3control.model.AccountLevel;
import software.amazon.awssdk.services.s3control.model.ActivityMetrics;
import software.amazon.awssdk.services.s3control.model.AdvancedCostOptimizationMetrics;
import software.amazon.awssdk.services.s3control.model.AdvancedDataProtectionMetrics;
import software.amazon.awssdk.services.s3control.model.AdvancedPerformanceMetrics;
import software.amazon.awssdk.services.s3control.model.BucketLevel;
import software.amazon.awssdk.services.s3control.model.CloudWatchMetrics;
import software.amazon.awssdk.services.s3control.model.DetailedStatusCodesMetrics;
import software.amazon.awssdk.services.s3control.model.Format;
import software.amazon.awssdk.services.s3control.model.Include;
import software.amazon.awssdk.services.s3control.model.OutputSchemaVersion;
import software.amazon.awssdk.services.s3control.model.PrefixLevel;
import software.amazon.awssdk.services.s3control.model.PrefixLevelStorageMetrics;
import software.amazon.awssdk.services.s3control.model.PutStorageLensConfigurationRequest;
import software.amazon.awssdk.services.s3control.model.S3BucketDestination;
import software.amazon.awssdk.services.s3control.model.SSES3;
import software.amazon.awssdk.services.s3control.model.SelectionCriteria;
import software.amazon.awssdk.services.s3control.model.StorageLensAwsOrg;
import software.amazon.awssdk.services.s3control.model.StorageLensConfiguration;
import software.amazon.awssdk.services.s3control.model.StorageLensDataExport;
import software.amazon.awssdk.services.s3control.model.StorageLensDataExportEncryption;
import software.amazon.awssdk.services.s3control.model.StorageLensExpandedPrefixesDataExport;
import software.amazon.awssdk.services.s3control.model.StorageLensTableDestination;
import software.amazon.awssdk.services.s3control.model.StorageLensTag;

import java.util.Arrays;
import java.util.List;

public class CreateAndUpdateDashboard {

    public static void main(String[] args) {
        String configurationId = "ConfigurationId";
        String sourceAccountId = "111122223333";
        String exportAccountId = "Destination Account ID";
        String exportBucketArn = "arn:aws:s3:::destBucketName"; // The destination bucket for your metrics export must be in the same Region as your S3 Storage Lens configuration.
        String awsOrgARN = "arn:aws:organizations::123456789012:organization/o-abcdefgh";
        Format exportFormat = Format.CSV;

        try {
            SelectionCriteria selectionCriteria = SelectionCriteria.builder()
                    .delimiter("/")
                    .maxDepth(5)
                    .minStorageBytesPercentage(10.0)
                    .build();

            PrefixLevelStorageMetrics prefixStorageMetrics = PrefixLevelStorageMetrics.builder()
                    .isEnabled(true)
                    .selectionCriteria(selectionCriteria)
                    .build();

            BucketLevel bucketLevel = BucketLevel.builder()
                    .activityMetrics(ActivityMetrics.builder().isEnabled(true).build())
                    .advancedCostOptimizationMetrics(AdvancedCostOptimizationMetrics.builder().isEnabled(true).build())
                    .advancedDataProtectionMetrics(AdvancedDataProtectionMetrics.builder().isEnabled(true).build())
                    .advancedPerformanceMetrics(AdvancedPerformanceMetrics.builder().isEnabled(true).build())
                    .detailedStatusCodesMetrics(DetailedStatusCodesMetrics.builder().isEnabled(true).build())
                    .prefixLevel(PrefixLevel.builder().storageMetrics(prefixStorageMetrics).build())
                    .build();

            AccountLevel accountLevel = AccountLevel.builder()
                    .activityMetrics(ActivityMetrics.builder().isEnabled(true).build())
                    .advancedCostOptimizationMetrics(AdvancedCostOptimizationMetrics.builder().isEnabled(true).build())
                    .advancedPerformanceMetrics(AdvancedPerformanceMetrics.builder().isEnabled(true).build())
                    .advancedDataProtectionMetrics(AdvancedDataProtectionMetrics.builder().isEnabled(true).build())
                    .detailedStatusCodesMetrics(DetailedStatusCodesMetrics.builder().isEnabled(true).build())
                    .bucketLevel(bucketLevel)
                    .build();

            Include include = Include.builder()
                    .buckets(Arrays.asList("arn:aws:s3:::bucketName"))
                    .regions(Arrays.asList("us-west-2"))
                    .build();

            StorageLensDataExportEncryption exportEncryption = StorageLensDataExportEncryption.builder()
                    .sses3(SSES3.builder().build())
                    .build();

            S3BucketDestination s3BucketDestination = S3BucketDestination.builder()
                    .accountId(exportAccountId)
                    .arn(exportBucketArn)
                    .encryption(exportEncryption)
                    .format(exportFormat)
                    .outputSchemaVersion(OutputSchemaVersion.V_1)
                    .prefix("Prefix")
                    .build();

            StorageLensTableDestination s3TablesDestination = StorageLensTableDestination.builder()
                    .encryption(exportEncryption)
                    .isEnabled(true)
                    .build();

            CloudWatchMetrics cloudWatchMetrics = CloudWatchMetrics.builder()
                    .isEnabled(true)
                    .build();

            StorageLensDataExport dataExport = StorageLensDataExport.builder()
                    .cloudWatchMetrics(cloudWatchMetrics)
                    .s3BucketDestination(s3BucketDestination)
                    .storageLensTableDestination(s3TablesDestination)
                    .build();

            StorageLensAwsOrg awsOrg = StorageLensAwsOrg.builder()
                    .arn(awsOrgARN)
                    .build();

            StorageLensExpandedPrefixesDataExport expandedPrefixesDataExport = StorageLensExpandedPrefixesDataExport.builder()
                    .s3BucketDestination(s3BucketDestination)
                    .storageLensTableDestination(s3TablesDestination)
                    .build();

            StorageLensConfiguration configuration = StorageLensConfiguration.builder()
                    .id(configurationId)
                    .accountLevel(accountLevel)
                    .include(include)
                    .dataExport(dataExport)
                    .awsOrg(awsOrg)
                    .expandedPrefixesDataExport(expandedPrefixesDataExport)
                    .prefixDelimiter("/")
                    .isEnabled(true)
                    .build();

            List<StorageLensTag> tags = Arrays.asList(
                    StorageLensTag.builder().key("key-1").value("value-1").build(),
                    StorageLensTag.builder().key("key-2").value("value-2").build()
            );

            S3ControlClient s3ControlClient = S3ControlClient.builder()
                    .region(Region.US_WEST_2)
                    .credentialsProvider(ProfileCredentialsProvider.create())
                    .build();

            s3ControlClient.putStorageLensConfiguration(PutStorageLensConfigurationRequest.builder()
                    .accountId(sourceAccountId)
                    .configId(configurationId)
                    .storageLensConfiguration(configuration)
                    .tags(tags)
                    .build()
            );

        } catch (AwsServiceException e) {
            // The call was transmitted successfully, but Amazon S3 couldn't process
            // it and returned an error response.
            e.printStackTrace();
        } catch (SdkClientException e) {
            // Amazon S3 couldn't be contacted for a response, or the client
            // couldn't parse the response from Amazon S3.
            e.printStackTrace();
        }
    }
}
```

要访问 S3 Storage Lens 组或扩展前缀，您必须升级控制面板以使用高级套餐。将收取额外费用。有关免费和高级套餐的更多信息，请参阅[指标选择](storage_lens_basics_metrics_recommendations.md#storage_lens_basics_metrics_selection)。有关 S3 Storage Lens 组的更多信息，请参阅 [使用 S3 Storage Lens 组筛选和汇总指标](storage-lens-groups-overview.md)。

# 更新 Amazon S3 Storage Lens 存储统计管理工具控制面板
<a name="storage_lens_editing"></a>

 Amazon S3 Storage Lens 存储统计管理工具默认控制面板是 `default-account-dashboard`。此控制面板由 Amazon S3 预配置，可帮助您在控制台上直观显示整个账户的聚合费用和高级指标的汇总见解和趋势。您无法修改原定设置控制面板的配置范围，但是您可以将指标选择从免费指标升级到付费的高级指标和建议，配置可选指标导出，甚至可以禁用原定设置控制面板。无法删除默认控制面板，而只能禁用它。有关更多信息，请参阅 [使用 S3 控制台](storage_lens_console_deleting.md)。

## 使用 S3 控制台
<a name="storage_lens_console_editing"></a>

使用以下步骤在 Amazon S3 控制台中更新 Amazon S3 Storage Lens 存储统计管理工具控制面板。

**步骤 1：更新控制面板并配置常规设置**

1. 登录到 AWS 管理控制台，然后通过以下网址打开 Amazon S3 控制台：[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 在左侧导航窗格中，选择 **Storage Lens（Storage Lens 存储统计管理工具）和 Dashboards（控制面板）**。

1. 选择要编辑的控制面板。

1. 选择**查看控制面板配置**。

1. 选择**编辑**。现在，您可以逐个步骤查看控制面板配置。要对任何步骤进行更改，您可以使用左侧导航栏直接单击该步骤。有关如何更新这些步骤的说明，
**注意**  
不能更改以下内容：  
控制面板名称
主区域

1. 在**控制面板**页面的**常规**部分中，您可以更改以下各项：
   + 选择**已启用**或**已禁用**来更新您是否在控制面板中接收每日指标。
   + （可选）您可以选择将**标签**添加到控制面板。您可以使用标签管理控制面板的权限并跟踪 S3 Storage Lens 存储统计管理工具的成本。有关更多信息，请参阅《IAM 用户指南》**中的[使用标签控制对 AWS 资源的访问](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html)以及《AWS Billing 用户指南》**中的[使用 AWS 生成的标签](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/aws-tags.html)。
**注意**  
您最多可以在控制面板配置中添加 50 个标签。

1. 选择**下一步**以保存您的更改并继续。

**步骤 2：更新控制面板范围**

1. 在**控制面板范围**部分，更新希望 S3 Storage Lens 存储统计管理工具在控制面板中包括或排除的区域和存储桶。
**注意**  
您可以包括或排除区域和桶。在组织中跨成员账户创建组织级控制面板时，此选项仅限于“区域”。
您最多可以选择 50 个桶来包括或排除。

1. 在所选区域中选择希望 S3 Storage Lens 存储统计管理工具包括或排除的桶。您可以包括或排除桶，但不能同时包括和排除桶。创建组织级控制面板时，此选项不可用。
**注意**  
您可以包括或排除区域和桶。在组织中跨成员账户创建组织级控制面板时，此选项仅限于“区域”。
您最多可以选择 50 个桶来包括或排除。

1. 选择**下一步**以保存您的更改并继续。

**第 3 步：更新 Storage Lens 存储统计管理工具套餐来配置指标选择**

1. 在 **Storage Lens 存储统计管理工具套餐****指标选择**部分，更新要为此控制面板聚合的指标套餐。
**注意**  
如果要从**免费套餐**更新为**高级套餐**，您需要更新**指标聚合**设置。要更新**指标聚合设置**，请参阅**步骤 4：更新指标聚合**。
如果要将 Storage Lens 存储统计管理工具套餐从**高级套餐**更新为**免费套餐**，您需要更新任意**指标聚合**设置。**指标聚合**功能仅适用于**高级套餐**指标类别。

1. 要包括在存储桶级别聚合且可在 14 天内供查询的免费指标，请选择**免费套餐**。

1. 要启用高级指标，请选择**高级套餐**。这些选项包括前缀聚合、Amazon CloudWatch 发布和情境化建议。数据可查询 15 个月。高级指标和建议需要额外付费。有关更多信息，请参阅 [Amazon S3 定价](https://aws.amazon.com/s3/pricing/)。

   有关高级指标和免费指标的更多信息，请参阅[指标选择](storage_lens_basics_metrics_recommendations.md#storage_lens_basics_metrics_selection)。

1. 在**高级指标类别**下，选择您要启用的指标类别：
   + **活动指标**
   + **Detailed status code metrics（详细的状态代码指标**
   + **成本优化指标**
   + **数据保护指标**
   + **性能指标**

   要预览每个类别中包含哪些指标，请使用指标类别复选框列表下方的下拉箭头按钮。有关指标类别的更多信息，请参阅[指标类别](storage_lens_basics_metrics_recommendations.md#storage_lens_basics_metrics_types)。要获得指标的完整列表，请参阅 [Amazon S3 Storage Lens 存储统计管理工具指标词汇表](storage_lens_metrics_glossary.md)。

1. 选择或指定**前缀分隔符**来区分每个前缀中的级别。此值用来标识每个前缀级别。Amazon S3 中的默认值为“`/`”字符，但是您的存储结构可能会使用其他分隔符字符。

1. 选择**下一步**以保存您的更改并继续。

**步骤 4：（可选）更新指标聚合**

1. 在**其他指标聚合**下，通过选择以下内容之一来更新要聚合的指标：
   + Prefix aggregation（前缀聚合）
   + Storage Lens 组聚合

1. 如果您启用了**前缀聚合**，请为控制面板指定最小**前缀阈值**和**前缀深度**。然后选择**下一步**以保存并继续。

1. 如果您已启用 **Storage Lens 组聚合**，请选择以下选项之一：
   + **包括 Storage Lens 组**
   + **排除 Storage Lens 组**

1. 当您在聚合中包括 Storage Lens 组时，您可以**包括主区域中的所有 Storage Lens 组**，也可以指定要包括的 Storage Lens 组。

1. 选择**下一步**以保存您的更改并继续。

**步骤 5：（可选）更新指标导出和发布设置**

1. 如果您想在 CloudWatch 控制面板中访问 Storage Lens 存储统计管理工具指标，请在**指标发布**下选择 **CloudWatch 发布**。
**注意**  
前缀级别的指标在 CloudWatch 中不可用。

1. 在**指标导出**下，选择要每天导出的 Storage Lens 存储统计管理工具控制面板数据：
   + **默认指标报告**
   + **扩展前缀指标报告**

1. （可选）如果您选择了**默认指标报告**，则在**默认指标报告**设置中，选择存储桶类型。您可以将报告导出到通用 S3 存储桶或只读 S3 表存储桶。根据所选存储桶类型，更新**通用存储桶目标设置**或**表存储桶目标设置**选项。
**注意**  
**默认指标报告**仅包含在前缀聚合设置中所设定的阈值和深度范围内的前缀。如果您尚未配置前缀聚合，则该阈值将包括最多 100 个按大小计算的最大前缀。
如果您选择指定加密密钥，则必须选择 AWS KMS 密钥（SSE-KMS）或 Amazon S3 托管密钥（SSE-S3）。如果您的目标存储桶策略要求加密，则必须为指标导出提供加密密钥。如果没有加密密钥，导出到 S3 会失败。有关更多信息，请参阅 [使用 AWS KMS key 加密您的指标导出](storage_lens_encrypt_permissions.md)。

1. 选择**下一步**以保存您的更改并继续。

1. （可选）如果您选择了**扩展前缀指标报告**，请在**扩展前缀指标报告**设置中，选择存储桶类型。您可以将报告导出到通用 S3 存储桶或只读 S3 表存储桶。根据所选存储桶类型，更新**通用存储桶目标设置**或**表存储桶目标设置**。
**注意**  
**扩展前缀指标报告**包括在控制面板范围内指定的所有存储桶中的前缀。
如果您选择指定加密密钥，则必须选择 AWS KMS 密钥（SSE-KMS）或 Amazon S3 托管密钥（SSE-S3）。如果您的目标存储桶策略要求加密，则必须为指标导出提供加密密钥。如果没有加密密钥，导出到 S3 会失败。有关更多信息，请参阅 [使用 AWS KMS key 加密您的指标导出](storage_lens_encrypt_permissions.md)。

1. 选择**下一步**以保存您的更改并继续。

**步骤 6：检查并更新控制面板配置**

1. 检查**常规**部分中的设置。选择**编辑**以进行任何更改。

1. 检查**控制面板范围**部分中的设置。选择**编辑**以进行任何更改。

1. 检查 **Storage Lens 存储统计管理工具套餐**部分中的设置。选择**编辑**以进行任何更改。

1. 检查**指标聚合**部分中的设置。选择**编辑**以进行任何更改。

1. 检查**指标导出**部分中的设置。选择**编辑**以进行任何更改。

1. 检查并确认所有控制面板配置设置后，选择**提交**以更新控制面板。

在您成功更新了 Storage Lens 存储统计管理工具控制面板后，您可以在 Storage Lens 存储统计管理工具**控制面板**页面下查看列出更新后控制面板配置。

## 使用 AWS CLI
<a name="S3PutStorageLensConfigurationTagsCLI"></a>

**Example**  
以下示例命令更新 Amazon S3 Storage Lens 存储统计管理工具控制面板配置。要使用这些示例，请将 `user input placeholders` 替换为您自己的信息。  

```
aws s3control put-storage-lens-configuration --account-id=111122223333 --config-id=example-dashboard-configuration-id --region=us-east-1 --storage-lens-configuration=file://./config.json --tags=file://./tags.json
```

## 使用适用于 Java 的 AWS SDK
<a name="S3UpdateStorageLensConfigurationAdvancedJava"></a>

**Example – 使用高级指标和建议更新默认 Amazon S3 Storage Lens 存储统计管理工具配置**  
以下示例显示了如何在适用于 Java 的 SDK 中使用高级指标和建议来更新默认 S3 Storage Lens 存储统计管理工具配置。  

```
package aws.example.s3control;

import com.amazonaws.AmazonServiceException;
import com.amazonaws.SdkClientException;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
import com.amazonaws.services.s3control.AWSS3Control;
import com.amazonaws.services.s3control.AWSS3ControlClient;
import com.amazonaws.services.s3control.model.AccountLevel;
import com.amazonaws.services.s3control.model.ActivityMetrics;
import com.amazonaws.services.s3control.model.BucketLevel;
import com.amazonaws.services.s3control.model.Format;
import com.amazonaws.services.s3control.model.Include;
import com.amazonaws.services.s3control.model.OutputSchemaVersion;
import com.amazonaws.services.s3control.model.PrefixLevel;
import com.amazonaws.services.s3control.model.PrefixLevelStorageMetrics;
import com.amazonaws.services.s3control.model.PutStorageLensConfigurationRequest;
import com.amazonaws.services.s3control.model.S3BucketDestination;
import com.amazonaws.services.s3control.model.SSES3;
import com.amazonaws.services.s3control.model.SelectionCriteria;
import com.amazonaws.services.s3control.model.StorageLensAwsOrg;
import com.amazonaws.services.s3control.model.StorageLensConfiguration;
import com.amazonaws.services.s3control.model.StorageLensDataExport;
import com.amazonaws.services.s3control.model.StorageLensDataExportEncryption;
import com.amazonaws.services.s3control.model.StorageLensTag;

import java.util.Arrays;
import java.util.List;

import static com.amazonaws.regions.Regions.US_WEST_2;

public class UpdateDefaultConfigWithPaidFeatures {

    public static void main(String[] args) {
        String configurationId = "default-account-dashboard"; // This configuration ID cannot be modified.
        String sourceAccountId = "111122223333";

        try {
            SelectionCriteria selectionCriteria = new SelectionCriteria()
                    .withDelimiter("/")
                    .withMaxDepth(5)
                    .withMinStorageBytesPercentage(10.0);
            PrefixLevelStorageMetrics prefixStorageMetrics = new PrefixLevelStorageMetrics()
                    .withIsEnabled(true)
                    .withSelectionCriteria(selectionCriteria);
            BucketLevel bucketLevel = new BucketLevel()
                    .withActivityMetrics(new ActivityMetrics().withIsEnabled(true))
                    .withPrefixLevel(new PrefixLevel().withStorageMetrics(prefixStorageMetrics));
            AccountLevel accountLevel = new AccountLevel()
                    .withActivityMetrics(new ActivityMetrics().withIsEnabled(true))
                    .withBucketLevel(bucketLevel);

            StorageLensConfiguration configuration = new StorageLensConfiguration()
                    .withId(configurationId)
                    .withAccountLevel(accountLevel)
                    .withIsEnabled(true);

            AWSS3Control s3ControlClient = AWSS3ControlClient.builder()
                    .withCredentials(new ProfileCredentialsProvider())
                    .withRegion(US_WEST_2)
                    .build();

            s3ControlClient.putStorageLensConfiguration(new PutStorageLensConfigurationRequest()
                    .withAccountId(sourceAccountId)
                    .withConfigId(configurationId)
                    .withStorageLensConfiguration(configuration)
            );

        } catch (AmazonServiceException e) {
            // The call was transmitted successfully, but Amazon S3 couldn't process
            // it and returned an error response.
            e.printStackTrace();
        } catch (SdkClientException e) {
            // Amazon S3 couldn't be contacted for a response, or the client
            // couldn't parse the response from Amazon S3.
            e.printStackTrace();
        }
    }
}
```

要访问 S3 Storage Lens 组或扩展前缀，您必须升级控制面板以使用高级套餐。将收取额外费用。有关免费和高级套餐的更多信息，请参阅[指标选择](storage_lens_basics_metrics_recommendations.md#storage_lens_basics_metrics_selection)。有关 S3 Storage Lens 组的更多信息，请参阅 [使用 S3 Storage Lens 组筛选和汇总指标](storage-lens-groups-overview.md)。

# 禁用 Amazon S3 Storage Lens 存储统计管理工具控制面板
<a name="storage_lens_disabling"></a>

可以从 Amazon S3 控制台中禁用 Amazon S3 Storage Lens 存储统计管理工具控制面板。禁用控制面板会阻止其将来生成指标。禁用的控制面板仍会保留其配置信息，以便重新启用后可以轻松恢复。禁用的控制面板将保留其历史数据，直到其不再可用于查询。

# 使用 S3 控制台
<a name="storage_lens_console_disabling"></a>

使用以下步骤在 Amazon S3 控制台中禁用 Amazon S3 Storage Lens 存储统计管理工具控制面板。

**禁用 Amazon S3 Storage Lens 存储统计管理工具控制面板**

1. 登录到 AWS 管理控制台，然后通过以下网址打开 Amazon S3 控制台：[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 在左侧导航窗格中，选择 **Storage Lens** 和 **Dashboards**（控制面板）。

1. 在**控制面板**列表中，选择要禁用的控制面板，然后选择列表顶部的**禁用**。

1. 在确认页面上，通过在文本字段中输入控制面板名称来确认要禁用控制面板，然后选择**确认**。

# 删除 Amazon S3 Storage Lens 存储统计管理工具控制面板
<a name="storage_lens_deleting"></a>

您无法删除原定设置控制面板。但是，您可以将其禁用。删除您创建的控制面板之前，请考虑以下事项：
+ 作为删除控制面板的替代方法，您可以*禁用*控制面板，以便将来可以重新启用该控制面板。有关更多信息，请参阅 [使用 S3 控制台](storage_lens_console_disabling.md)。
+ 删除控制面板将删除与其关联的所有配置设置。
+ 删除控制面板将使所有历史指标数据不可用。这些历史数据仍会保留 15 个月。如果您想再次访问此数据，请在与删除控制面板相同的主区域中以相同名称创建一个控制面板。

# 使用 S3 控制台
<a name="storage_lens_console_deleting"></a>

可以从 Amazon S3 控制台中删除 Amazon S3 Storage Lens 存储统计管理工具控制面板。但是，删除控制面板会阻止其将来生成指标。

**删除 Amazon S3 Storage Lens 存储统计管理工具控制面板**

1. 登录到 AWS 管理控制台，然后通过以下网址打开 Amazon S3 控制台：[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 在左侧导航窗格中，选择 **Storage Lens** 和 **Dashboards**（控制面板）。

1. 在**控制面板**列表中，选择要删除的控制面板，然后选择列表顶部的**删除**。

1. 在**删除控制面板**页面上，通过在文本字段中输入控制面板名称来确认要删除控制面板。然后，选择 **Confirm（确认）**。

# 使用 AWS CLI
<a name="storage_lens_cli_deleting"></a>

**Example**  
 以下示例删除 S3 Storage Lens 存储统计管理工具配置。要使用这些示例，请将 `user input placeholders` 替换为您自己的信息。  

```
aws s3control delete-storage-lens-configuration --account-id=222222222222 --region=us-east-1 --config-id=your-configuration-id
```

## 使用适用于 Java 的 AWS SDK
<a name="S3DeleteStorageLensConfigurationJava"></a>

**Example – 删除 Amazon S3 Storage Lens 存储统计管理工具控制面板配置**  
以下示例显示了如何使用适用于 Java 的 SDK 来删除 S3 Storage Lens 存储统计管理工具配置：  

```
package aws.example.s3control;

import com.amazonaws.AmazonServiceException;
import com.amazonaws.SdkClientException;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
import com.amazonaws.services.s3control.AWSS3Control;
import com.amazonaws.services.s3control.AWSS3ControlClient;
import com.amazonaws.services.s3control.model.DeleteStorageLensConfigurationRequest;

import static com.amazonaws.regions.Regions.US_WEST_2;

public class DeleteDashboard {

    public static void main(String[] args) {
        String configurationId = "ConfigurationId";
        String sourceAccountId = "111122223333";
        try {
            AWSS3Control s3ControlClient = AWSS3ControlClient.builder()
                    .withCredentials(new ProfileCredentialsProvider())
                    .withRegion(US_WEST_2)
                    .build();

            s3ControlClient.deleteStorageLensConfiguration(new DeleteStorageLensConfigurationRequest()
                    .withAccountId(sourceAccountId)
                    .withConfigId(configurationId)
            );
        } catch (AmazonServiceException e) {
            // The call was transmitted successfully, but Amazon S3 couldn't process
            // it and returned an error response.
            e.printStackTrace();
        } catch (SdkClientException e) {
            // Amazon S3 couldn't be contacted for a response, or the client
            // couldn't parse the response from Amazon S3.
            e.printStackTrace();
        }
    }
}
```

# 列出 Amazon S3 Storage Lens 存储统计管理工具控制面板
<a name="storage_lens_list_dashboard"></a>

 

# 使用 S3 控制台
<a name="storage_lens_console_listing"></a>

**列出 S3 Storage Lens 存储统计管理工具控制面板**

1. 登录到 AWS 管理控制台，然后通过以下网址打开 Amazon S3 控制台：[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 在左侧导航窗格中，导航到 **Storage Lens 存储统计管理工具**。

1. 选择**控制面板**。现在，您可以在 AWS 账户中查看控制面板。

## 使用 AWS CLI
<a name="S3ListStorageLensConfigurationsCLI"></a>

**Example**  
以下示例命令列出了 AWS 账户中的 S3 Storage Lens 存储统计管理工具控制面板。要使用这些示例，请将 `user input placeholders` 替换为您自己的信息。  

```
aws s3control list-storage-lens-configurations --account-id=222222222222 --region=us-east-1 --next-token=abcdefghij1234
```

**Example**  
以下示例列出了没有下一个令牌的 S3 Storage Lens 存储统计管理工具配置。要使用这些示例，请将 `user input placeholders` 替换为您自己的信息。  

```
aws s3control list-storage-lens-configurations --account-id=222222222222 --region=us-east-1
```

## 使用适用于 Java 的 AWS SDK
<a name="S3ListStorageLensConfigurationsJava"></a>

**Example – 列出 S3 Storage Lens 存储统计管理工具控制面板配置**  
以下示例显示了如何在适用于 Java 的 SDK 中列出 S3 Storage Lens 存储统计管理工具配置。要使用此示例，请将每个示例描述中的 `user input placeholders` 替换为 您自己的信息。  

```
package aws.example.s3control;

import com.amazonaws.AmazonServiceException;
import com.amazonaws.SdkClientException;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
import com.amazonaws.services.s3control.AWSS3Control;
import com.amazonaws.services.s3control.AWSS3ControlClient;
import com.amazonaws.services.s3control.model.ListStorageLensConfigurationEntry;
import com.amazonaws.services.s3control.model.ListStorageLensConfigurationsRequest;

import java.util.List;

import static com.amazonaws.regions.Regions.US_WEST_2;

public class ListDashboard {

    public static void main(String[] args) {
        String sourceAccountId = "111122223333";
        String nextToken = "nextToken";

        try {
            AWSS3Control s3ControlClient = AWSS3ControlClient.builder()
                    .withCredentials(new ProfileCredentialsProvider())
                    .withRegion(US_WEST_2)
                    .build();

            final List<ListStorageLensConfigurationEntry> configurations =
                    s3ControlClient.listStorageLensConfigurations(new ListStorageLensConfigurationsRequest()
                            .withAccountId(sourceAccountId)
                            .withNextToken(nextToken)
                    ).getStorageLensConfigurationList();

            System.out.println(configurations.toString());
        } catch (AmazonServiceException e) {
            // The call was transmitted successfully, but Amazon S3 couldn't process
            // it and returned an error response.
            e.printStackTrace();
        } catch (SdkClientException e) {
            // Amazon S3 couldn't be contacted for a response, or the client
            // couldn't parse the response from Amazon S3.
            e.printStackTrace();
        }
    }
}
```

# 查看 Amazon S3 Storage Lens 存储统计管理工具控制面板配置详细信息
<a name="storage_lens_viewing"></a>

可以从 Amazon S3 控制台、AWS CLI 和适用于 Java 的 SDK 中查看 Amazon S3 Storage Lens 存储统计管理工具控制面板。

# 使用 S3 控制台
<a name="storage_lens_console_viewing"></a>

**查看 S3 Storage Lens 存储统计管理工具控制面板配置详细信息**

1. 登录到 AWS 管理控制台，然后通过以下网址打开 Amazon S3 控制台：[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 在左侧导航窗格中，导航到 **Storage Lens 存储统计管理工具**。

1. 选择**控制面板**。

1. 从**控制面板**列表中，单击您要查看的控制面板。现在，您可以查看 Storage Lens 存储统计管理工具控制面板的详细信息。

## 使用 AWS CLI
<a name="S3ListStorageLensConfigurationsCLI"></a>

**Example**  
以下示例检索 S3 Storage Lens 存储统计管理工具配置，以便您可以查看配置详细信息。要使用这些示例，请将 `user input placeholders` 替换为您自己的信息。  

```
aws s3control get-storage-lens-configuration --account-id=222222222222 --config-id=your-configuration-id --region=us-east-1
```

## 使用适用于 Java 的 AWS SDK
<a name="S3GetStorageLensConfigurationJava"></a>

**Example – 检索和查看 S3 Storage Lens 存储统计管理工具配置**  
以下示例显示了如何在适用于 Java 的 SDK 中检索 S3 Storage Lens 存储统计管理工具配置，以便您可以查看配置详细信息。要使用此示例，请将 `user input placeholders` 替换为您自己的信息。  

```
package aws.example.s3control;

import com.amazonaws.AmazonServiceException;
import com.amazonaws.SdkClientException;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
import com.amazonaws.services.s3control.AWSS3Control;
import com.amazonaws.services.s3control.AWSS3ControlClient;
import com.amazonaws.services.s3control.model.GetStorageLensConfigurationRequest;
import com.amazonaws.services.s3control.model.GetStorageLensConfigurationResult;
import com.amazonaws.services.s3control.model.StorageLensConfiguration;

import static com.amazonaws.regions.Regions.US_WEST_2;

public class GetDashboard {

    public static void main(String[] args) {
        String configurationId = "ConfigurationId";
        String sourceAccountId = "111122223333";

        try {
            AWSS3Control s3ControlClient = AWSS3ControlClient.builder()
                    .withCredentials(new ProfileCredentialsProvider())
                    .withRegion(US_WEST_2)
                    .build();

            final StorageLensConfiguration configuration =
                    s3ControlClient.getStorageLensConfiguration(new GetStorageLensConfigurationRequest()
                            .withAccountId(sourceAccountId)
                            .withConfigId(configurationId)
                    ).getStorageLensConfiguration();

            System.out.println(configuration.toString());
        } catch (AmazonServiceException e) {
            // The call was transmitted successfully, but Amazon S3 couldn't process
            // it and returned an error response.
            e.printStackTrace();
        } catch (SdkClientException e) {
            // Amazon S3 couldn't be contacted for a response, or the client
            // couldn't parse the response from Amazon S3.
            e.printStackTrace();
        }
    }
}
```

# 使用 S3 Storage Lens 存储统计管理工具管理 AWS 资源标签
<a name="storage-lens-groups-manage-tags-dashboard"></a>

每个 Amazon S3 Storage Lens 存储统计管理工具控制面板都计为一项 AWS 资源，具有其自己的 Amazon 资源名称（ARN）。因此，在配置 Storage Lens 存储统计管理工具控制面板时，可以选择向控制面板添加 AWS 资源标签。最多可以为每个 Storage Lens 存储统计管理工具控制面板添加 50 个标签。要创建带标签的 Storage Lens 存储统计管理工具控制面板，您必须拥有以下 [S3 Storage Lens 存储统计管理工具权限](https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_iam_permissions.html)：
+ `s3:ListStorageLensConfigurations`
+ `s3:GetStorageLensConfiguration`
+ `s3:GetStorageLensConfigurationTagging`
+ `s3:PutStorageLensConfiguration`
+ ` s3:PutStorageLensConfigurationTagging`

您可以使用 AWS 资源标签根据部门、业务线或项目对资源进行分类。这在您有许多相同类型的资源时会非常有用。通过应用标签，可以根据分配给特定 S3 Storage Lens 存储统计管理工具控制面板的标签，来快速识别该控制面板。您还可以使用标签对成本进行跟踪和分配。

此外，当您向 Storage Lens 存储统计管理工具控制面板添加 AWS 资源标签时，将激活[基于属性的访问权限控制（ABAC）](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html)。ABAC 是一种基于属性（如标签）定义权限的授权策略。您还可以在 IAM policy 中使用指定资源标签的条件，从而[控制对 AWS 资源的访问](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html#access_tags_control-resources)。

您可以修改标签的键和值，还可以随时删除资源的标签。此外，请注意以下限制：
+ 标签键和标签值区分大小写。
+ 如果您添加的标签的值与该实例上现有标签的值相同，新的值就会覆盖旧值。
+ 如果删除资源，资源的所有标签也会被删除。
+ 不要在 AWS 资源标签中包含隐私或敏感数据。
+ 不支持系统标签（标签键以 `aws:` 开头）。
+ 每个标签键的长度不能超过 128 个字符。每个标签值的长度不能超过 256 个字符。

以下示例演示如何将 AWS 资源标签与 Storage Lens 存储统计管理工具控制面板结合使用。

**Topics**
+ [将 AWS 资源标签添加到 Storage Lens 存储统计管理工具控制面板](storage-lens-add-tags.md)
+ [检索 Storage Lens 存储统计管理工具控制面板的 AWS 资源标签](storage-lens-get-tags.md)
+ [更新 Storage Lens 存储统计管理工具控制面板标签](storage-lens-update-tags.md)
+ [从 S3 Storage Lens 存储统计管理工具控制面板中删除 AWS 资源标签](storage-lens-dashboard-delete-tags.md)

# 将 AWS 资源标签添加到 Storage Lens 存储统计管理工具控制面板
<a name="storage-lens-add-tags"></a>

以下示例演示如何将 AWS 资源标签添加到 S3 Storage Lens 存储统计管理工具控制面板。您可以使用 Amazon S3 控制台、AWS Command Line Interface (AWS CLI) 和 适用于 Java 的 AWS SDK 添加资源标签。

## 使用 S3 控制台
<a name="storage-lens-add-tags-console"></a>

**将 AWS 资源标签添加到 Storage Lens 存储统计管理工具控制面板**

1. 登录到 AWS 管理控制台，然后通过以下网址打开 Amazon S3 控制台：[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 在左侧导航窗格中，导航到 **Storage Lens 存储统计管理工具**。

1. 选择**控制面板**。

1. 选择您要更新的 Storage Lens 存储统计管理工具控制面板的单选按钮。然后选择 **Edit**（编辑）。

1. 在**常规**下，选择**添加标签**。

1. 在**添加标签**页面上，添加新的键值对。
**注意**  
如果添加的新标签与现有标签具有相同的键，则将覆盖之前的标签值。

1. （可选）要添加多个新标签，请再次选择**添加标签**以继续添加新条目。最多可以将 50 个 AWS 资源标签添加到 Storage Lens 存储统计管理工具控制面板。

1. （可选）如果要移除新添加的条目，请选择要移除的标签旁的**移除**。

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

## 使用 AWS CLI
<a name="storage-lens-add-tags-cli"></a>

**Example**  
以下示例命令将标签添加到 S3 Storage Lens 存储统计管理工具控制面板配置。要使用这些示例，请将 `user input placeholders` 替换为您自己的信息。  

```
aws s3control put-storage-lens-configuration-tagging --account-id=222222222222 --region=us-east-1 --config-id=your-configuration-id --tags=file://./tags.json
```

## 使用适用于 Java 的 AWS SDK
<a name="storage-lens-add-tags-sdk-java"></a>

以下示例命令在适用于 Java 的 SDK 中将标签添加到 Amazon S3 Storage Lens 存储统计管理工具配置。要使用此示例，请将 `user input placeholders` 替换为您自己的信息。

**Example – 将标签添加到 S3 Storage Lens 存储统计管理工具配置**  

```
package aws.example.s3control;

import com.amazonaws.AmazonServiceException;
import com.amazonaws.SdkClientException;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
import com.amazonaws.services.s3control.AWSS3Control;
import com.amazonaws.services.s3control.AWSS3ControlClient;
import com.amazonaws.services.s3control.model.PutStorageLensConfigurationTaggingRequest;
import com.amazonaws.services.s3control.model.StorageLensTag;

import java.util.Arrays;
import java.util.List;

import static com.amazonaws.regions.Regions.US_WEST_2;

public class PutDashboardTagging {

    public static void main(String[] args) {
        String configurationId = "ConfigurationId";
        String sourceAccountId = "111122223333";

        try {
            List<StorageLensTag> tags = Arrays.asList(
                    new StorageLensTag().withKey("key-1").withValue("value-1"),
                    new StorageLensTag().withKey("key-2").withValue("value-2")
            );

            AWSS3Control s3ControlClient = AWSS3ControlClient.builder()
                    .withCredentials(new ProfileCredentialsProvider())
                    .withRegion(US_WEST_2)
                    .build();

            s3ControlClient.putStorageLensConfigurationTagging(new PutStorageLensConfigurationTaggingRequest()
                    .withAccountId(sourceAccountId)
                    .withConfigId(configurationId)
                    .withTags(tags)
            );
        } catch (AmazonServiceException e) {
            // The call was transmitted successfully, but Amazon S3 couldn't process
            // it and returned an error response.
            e.printStackTrace();
        } catch (SdkClientException e) {
            // Amazon S3 couldn't be contacted for a response, or the client
            // couldn't parse the response from Amazon S3.
            e.printStackTrace();
        }
    }
}
```

# 检索 Storage Lens 存储统计管理工具控制面板的 AWS 资源标签
<a name="storage-lens-get-tags"></a>

以下示例演示如何检索 S3 Storage Lens 存储统计管理工具控制面板的 AWS 资源标签。可以使用 Amazon S3 控制台、AWS Command Line Interface（AWS CLI）和适用于 Java 的 AWS SDK 来获取资源标签。

# 使用 S3 控制台
<a name="storage-lens-get-tags-console"></a>

**检索 Storage Lens 存储统计管理工具控制面板的 AWS 资源标签**

1. 登录到 AWS 管理控制台，然后通过以下网址打开 Amazon S3 控制台：[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 在左侧导航窗格中，导航到 **Storage Lens 存储统计管理工具**。

1. 选择**控制面板**。

1. 选择您要查看的 Storage Lens 存储统计管理工具控制面板配置的单选按钮。然后，选择**查看控制面板配置**。

1. 在**标签**下，查看与控制面板关联的标签。

1. （可选）如果要添加新标签，请选择**编辑**。然后选择**添加标签**。在**添加标签**页面上，添加新的键值对。
**注意**  
如果添加的新标签与现有标签具有相同的键，则将覆盖之前的标签值。

1. （可选）如果要移除新添加的条目，请选择要移除的标签旁的**移除**。

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

## 使用 AWS CLI
<a name="storage-lens-get-tags-cli"></a>

**Example**  
以下示例命令检索 S3 Storage Lens 存储统计管理工具控制面板配置的标签。要使用这些示例，请将 `user input placeholders` 替换为您自己的信息。  

```
aws s3control get-storage-lens-configuration-tagging --account-id=222222222222 --region=us-east-1 --config-id=your-configuration-id --tags=file://./tags.json
```

## 使用适用于 Java 的 AWS SDK
<a name="S3GetStorageLensConfigurationTaggingJava"></a>

**Example – 获取 S3 Storage Lens 存储统计管理工具控制面板配置的标签**  
以下示例显示了如何在适用于 Java 的 SDK 中检索 S3 Storage Lens 存储统计管理工具控制面板配置的标签。要使用此示例，请将 `user input placeholders` 替换为您自己的信息。  

```
package aws.example.s3control;

import com.amazonaws.AmazonServiceException;
import com.amazonaws.SdkClientException;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
import com.amazonaws.services.s3control.AWSS3Control;
import com.amazonaws.services.s3control.AWSS3ControlClient;
import com.amazonaws.services.s3control.model.DeleteStorageLensConfigurationRequest;
import com.amazonaws.services.s3control.model.GetStorageLensConfigurationTaggingRequest;
import com.amazonaws.services.s3control.model.StorageLensTag;

import java.util.List;

import static com.amazonaws.regions.Regions.US_WEST_2;

public class GetDashboardTagging {

    public static void main(String[] args) {
        String configurationId = "ConfigurationId";
        String sourceAccountId = "111122223333";
        try {
            AWSS3Control s3ControlClient = AWSS3ControlClient.builder()
                    .withCredentials(new ProfileCredentialsProvider())
                    .withRegion(US_WEST_2)
                    .build();

            final List<StorageLensTag> s3Tags = s3ControlClient
                    .getStorageLensConfigurationTagging(new GetStorageLensConfigurationTaggingRequest()
                            .withAccountId(sourceAccountId)
                            .withConfigId(configurationId)
                    ).getTags();

            System.out.println(s3Tags.toString());
        } catch (AmazonServiceException e) {
            // The call was transmitted successfully, but Amazon S3 couldn't process
            // it and returned an error response.
            e.printStackTrace();
        } catch (SdkClientException e) {
            // Amazon S3 couldn't be contacted for a response, or the client
            // couldn't parse the response from Amazon S3.
            e.printStackTrace();
        }
    }
}
```

# 更新 Storage Lens 存储统计管理工具控制面板标签
<a name="storage-lens-update-tags"></a>

以下示例演示如何使用 Amazon S3 控制台、AWS Command Line Interface（AWS CLI）和适用于 Java 的 AWS SDK 更新 Storage Lens 存储统计管理工具控制面板标签。

## 使用 S3 控制台
<a name="storage-lens-dashboard-update-tags-console"></a>

**更新 Storage Lens 存储统计管理工具控制面板的 AWS 资源标签**

1. 登录到 AWS 管理控制台，然后通过以下网址打开 Amazon S3 控制台：[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 在左侧导航窗格中，导航到 **Storage Lens 存储统计管理工具**。

1. 选择**控制面板**。

1. 选择您要查看的 Storage Lens 存储统计管理工具控制面板配置的单选按钮。然后，选择**查看控制面板配置**。

1. 在**标签**下，查看与控制面板关联的标签。

1. （可选）如果要添加新标签，请选择**编辑**。然后选择**添加标签**。在**添加标签**页面上，添加新的键值对。
**注意**  
如果添加的新标签与现有标签具有相同的键，则将覆盖之前的标签值。

1. （可选）如果要移除新添加的条目，请选择要移除的标签旁的**移除**。

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

## 使用 AWS CLI
<a name="storage-lens-dashboard-update-tags-cli"></a>

**Example**  
以下示例命令添加或替换现有 Amazon S3 Storage Lens 存储统计管理工具控制面板配置上的标签。要使用这些示例，请将 `user input placeholders` 替换为您自己的信息。  

```
aws s3control put-storage-lens-configuration-tagging --account-id=111122223333 --config-id=example-dashboard-configuration-id --region=us-east-1 --config-id=your-configuration-id
```

## 使用适用于 Java 的 AWS SDK
<a name="storage-lens-dashboard-update-tags-sdk-java"></a>

以下适用于 Java 的 AWS SDK 示例更新现有 Storage Lens 存储统计管理工具控制面板上的 AWS 资源标签。要使用此示例，请将 `user input placeholders` 替换为您自己的信息。

**Example – 更新现有 Storage Lens 存储统计管理工具控制面板配置上的标签**  

```
package aws.example.s3control;

import com.amazonaws.AmazonServiceException;
import com.amazonaws.SdkClientException;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
import com.amazonaws.services.s3control.AWSS3Control;
import com.amazonaws.services.s3control.AWSS3ControlClient;
import com.amazonaws.services.s3control.model.PutStorageLensConfigurationTaggingRequest;
import com.amazonaws.services.s3control.model.StorageLensTag;

import java.util.Arrays;
import java.util.List;

import static com.amazonaws.regions.Regions.US_WEST_2;

public class PutDashboardTagging {

    public static void main(String[] args) {
        String configurationId = "ConfigurationId";
        String sourceAccountId = "111122223333";

        try {
            List<StorageLensTag> tags = Arrays.asList(
                    new StorageLensTag().withKey("key-1").withValue("value-1"),
                    new StorageLensTag().withKey("key-2").withValue("value-2")
            );

            AWSS3Control s3ControlClient = AWSS3ControlClient.builder()
                    .withCredentials(new ProfileCredentialsProvider())
                    .withRegion(US_WEST_2)
                    .build();

            s3ControlClient.putStorageLensConfigurationTagging(new PutStorageLensConfigurationTaggingRequest()
                    .withAccountId(sourceAccountId)
                    .withConfigId(configurationId)
                    .withTags(tags)
            );
        } catch (AmazonServiceException e) {
            // The call was transmitted successfully, but Amazon S3 couldn't process
            // it and returned an error response.
            e.printStackTrace();
        } catch (SdkClientException e) {
            // Amazon S3 couldn't be contacted for a response, or the client
            // couldn't parse the response from Amazon S3.
            e.printStackTrace();
        }
    }
}
```

# 从 S3 Storage Lens 存储统计管理工具控制面板中删除 AWS 资源标签
<a name="storage-lens-dashboard-delete-tags"></a>

以下示例演示如何从现有 Storage Lens 存储统计管理工具控制面板中删除 AWS 资源标签。您可以使用 Amazon S3 控制台、AWS Command Line Interface (AWS CLI) 和 适用于 Java 的 AWS SDK 删除标签。

## 使用 S3 控制台
<a name="storage-lens-groups-delete-tags-console"></a>

**从现有 Storage Lens 存储统计管理工具控制面板中删除 AWS 资源标签**

1. 登录到 AWS 管理控制台，然后通过以下网址打开 Amazon S3 控制台：[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 在左侧导航窗格中，导航到 **Storage Lens 存储统计管理工具**。

1. 选择**控制面板**。

1. 选择您要查看的 Storage Lens 存储统计管理工具控制面板配置的单选按钮。然后，选择**查看控制面板配置**。

1. 在**标签**下，查看与控制面板关联的标签。

1. 选择要移除的标签旁边的**移除**。

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

## 使用 AWS CLI
<a name="storage-lens-dashboard-delete-tags-cli"></a>

以下 AWS CLI 命令从现有的 Storage Lens 存储统计管理工具控制面板中删除 AWS 资源标签。要使用此示例命令，请将 `user input placeholders` 替换为您自己的信息。

**Example**  

```
aws s3control delete-storage-lens-configuration-tagging --account-id=222222222222 --config-id=your-configuration-id --region=us-east-1
```

## 使用适用于 Java 的 AWS SDK
<a name="storage-lens-dashboard-delete-tags-sdk-java"></a>

以下适用于 Java 的 AWS SDK 示例使用您在账户 `111122223333` 中指定的 Amazon 资源名称（ARN），从 Storage Lens 存储统计管理工具控制面板中删除 AWS 资源标签。要使用此示例，请将 `user input placeholders` 替换为您自己的信息。

**Example – 删除 S3 Storage Lens 存储统计管理工具控制面板配置的标签**  

```
package aws.example.s3control;

import com.amazonaws.AmazonServiceException;
import com.amazonaws.SdkClientException;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
import com.amazonaws.services.s3control.AWSS3Control;
import com.amazonaws.services.s3control.AWSS3ControlClient;
import com.amazonaws.services.s3control.model.DeleteStorageLensConfigurationTaggingRequest;

import static com.amazonaws.regions.Regions.US_WEST_2;

public class DeleteDashboardTagging {

    public static void main(String[] args) {
        String configurationId = "ConfigurationId";
        String sourceAccountId = "111122223333";
        try {
            AWSS3Control s3ControlClient = AWSS3ControlClient.builder()
                    .withCredentials(new ProfileCredentialsProvider())
                    .withRegion(US_WEST_2)
                    .build();

            s3ControlClient.deleteStorageLensConfigurationTagging(new DeleteStorageLensConfigurationTaggingRequest()
                    .withAccountId(sourceAccountId)
                    .withConfigId(configurationId)
            );
        } catch (AmazonServiceException e) {
            // The call was transmitted successfully, but Amazon S3 couldn't process
            // it and returned an error response.
            e.printStackTrace();
        } catch (SdkClientException e) {
            // Amazon S3 couldn't be contacted for a response, or the client
            // couldn't parse the response from Amazon S3.
            e.printStackTrace();
        }
    }
}
```

# 使用 Amazon S3 Storage Lens 存储统计管理工具的帮助程序文件
<a name="S3LensHelperFilesCLI"></a>

为您的示例使用以下 JSON 文件及其关键输入。

## JSON 格式的 S3 Storage Lens 存储统计管理工具示例配置
<a name="S3LensHelperFilesSampleConfigurationCLI"></a>

**Example `config.json`**  
`config.json` 文件包含 S3 Storage Lens 存储统计管理工具组织级*高级指标和建议*配置的详细信息。要使用以下示例，请将 `user input placeholders` 替换为您自己的信息。  
高级指标和建议需支付额外费用。有关详细信息，请参阅[高级指标和建议](https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_basics_metrics_recommendations.html#storage_lens_basics_metrics_selection)。

```
{
  "Id": "SampleS3StorageLensConfiguration", //Use this property to identify your S3 Storage Lens configuration.
  "AwsOrg": { //Use this property when enabling S3 Storage Lens for AWS Organizations.
    "Arn": "arn:aws:organizations::123456789012:organization/o-abcdefgh"
  },
  "AccountLevel": {
    "ActivityMetrics": {
      "IsEnabled":true
    },
    "AdvancedCostOptimizationMetrics": {
      "IsEnabled":true
    },
    "AdvancedDataProtectionMetrics": {
      "IsEnabled":true
    },
    "DetailedStatusCodesMetrics": {
      "IsEnabled":true
    },
    "BucketLevel": {
      "ActivityMetrics": {
        "IsEnabled":true
      },
      "AdvancedDataProtectionMetrics": {
      "IsEnabled":true
      },
      "AdvancedCostOptimizationMetrics": {
        "IsEnabled":true
      },
      "DetailedStatusCodesMetrics": {
        "IsEnabled":true
      },
      "PrefixLevel":{
        "StorageMetrics":{
          "IsEnabled":true,
          "SelectionCriteria":{
            "MaxDepth":5,
            "MinStorageBytesPercentage":1.25,
            "Delimiter":"/"
          }
        }
      }
    }
  },
  "Exclude": { //Replace with "Include" if you prefer to include Regions.
    "Regions": [
      "eu-west-1"
    ],
    "Buckets": [ //This attribute is not supported for AWS Organizations-level configurations.
      "arn:aws:s3:::amzn-s3-demo-source-bucket"
    ]
  },
  "IsEnabled": true, //Whether the configuration is enabled
  "DataExport": { //Details about the metrics export
    "S3BucketDestination": {
      "OutputSchemaVersion": "V_1",
      "Format": "CSV", //You can add "Parquet" if you prefer.
      "AccountId": "111122223333",
      "Arn": "arn:aws:s3:::
amzn-s3-demo-destination-bucket", // The destination bucket for your metrics export must be in the same Region as your S3 Storage Lens configuration. 
      "Prefix": "prefix-for-your-export-destination",
      "Encryption": {
        "SSES3": {}
      }
    },
    "CloudWatchMetrics": {
      "IsEnabled": true
    }
  }
}
```

## JSON 格式的 S3 Storage Lens 存储统计管理工具示例配置（带 Storage Lens 组）
<a name="StorageLensGroupsHelperFilesCLI"></a>

**Example `config.json`**  

`config.json` 文件包含在使用 Storage Lens 组时，要应用于 Storage Lens 存储统计管理工具配置的详细信息。要使用该示例，请将 `user input placeholders` 替换为您自己的信息。

要将所有 Storage Lens 组附加到您的控制面板，请使用以下语法更新 Storage Lens 存储统计管理工具配置：

```
{
  "Id": "ExampleS3StorageLensConfiguration",
  "AccountLevel": {
    "ActivityMetrics": {
      "IsEnabled":true
    },
    "AdvancedCostOptimizationMetrics": {
      "IsEnabled":true
    },
    "AdvancedDataProtectionMetrics": {
      "IsEnabled":true
    },
    "BucketLevel": {
      "ActivityMetrics": {
      "IsEnabled":true
      },
    "StorageLensGroupLevel": {},
  "IsEnabled": true
}
```

要在 Storage Lens 存储统计管理工具控制面板配置中仅包含两个 Storage Lens 组（*slg-1* 和 *slg-2*），请使用以下语法：

```
{
  "Id": "ExampleS3StorageLensConfiguration",
  "AccountLevel": {
    "ActivityMetrics": {
      "IsEnabled":true
    },
    "AdvancedCostOptimizationMetrics": {
      "IsEnabled":true
    },
    "AdvancedDataProtectionMetrics": {
      "IsEnabled":true
    },
    "BucketLevel": {
      "ActivityMetrics": {
      "IsEnabled":true
      },
   "StorageLensGroupLevel": {
        "SelectionCriteria": {
            "Include": [
                "arn:aws:s3:us-east-1:111122223333:storage-lens-group/slg-1",
                "arn:aws:s3:us-east-1:444455556666:storage-lens-group/slg-2"
            ]
    },
  "IsEnabled": true
}
```

要仅将某些 Storage Lens 组排除在您的控制面板配置之外，请使用以下语法：

```
{
  "Id": "ExampleS3StorageLensConfiguration",
  "AccountLevel": {
    "ActivityMetrics": {
      "IsEnabled":true
    },
    "AdvancedCostOptimizationMetrics": {
      "IsEnabled":true
    },
    "AdvancedDataProtectionMetrics": {
      "IsEnabled":true
    },
    "BucketLevel": {
      "ActivityMetrics": {
      "IsEnabled":true
      },
   "StorageLensGroupLevel": {
        "SelectionCriteria": {
            "Exclude": [
                "arn:aws:s3:us-east-1:111122223333:storage-lens-group/slg-1",
                "arn:aws:s3:us-east-1:444455556666:storage-lens-group/slg-2"
            ]
    },
  "IsEnabled": true
}
```

## JSON 格式的 S3 Storage Lens 存储统计管理工具示例标签配置
<a name="S3LensHelperFilesSampleConfigurationTagsCLI"></a>

**Example `tags.json`**  
`tags.json` 文件包含要应用于 S3 Storage Lens 存储统计管理工具配置的标签。要使用此示例，请将 `user input placeholders` 替换为您自己的信息。  

```
[
    {
        "Key": "key1",
        "Value": "value1"
    },
    {
        "Key": "key2",
        "Value": "value2"
    }
]
```

## S3 Storage Lens 存储统计管理工具示例配置 IAM 权限
<a name="S3LensHelperFilesSampleConfigurationIAMPermissionsCLI"></a>

**Example `permissions.json` – 特定控制面板名称**  
此示例策略显示具有指定的特定控制面板名称的 S3 Storage Lens 存储统计管理工具 IAM `permissions.json` 文件。将 *`value1`*、`us-east-1`、`your-dashboard-name` 和 `example-account-id` 替换为您自己的值。    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetStorageLensConfiguration",
                "s3:DeleteStorageLensConfiguration",
                "s3:PutStorageLensConfiguration"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/key1": "value1"
                }
            },
            "Resource": "arn:aws:s3:us-east-1:111122223333:storage-lens/your-dashboard-name"
        }
    ]
}
```

**Example `permissions.json` – 没有特定的控制面板名称**  
此示例策略显示了未指定特定控制面板名称的 S3 Storage Lens 存储统计管理工具 IAM `permissions.json` 文件。将 *`value1`*、`us-east-1` 和 `example-account-id` 替换为您自己的值。    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetStorageLensConfiguration",
                "s3:DeleteStorageLensConfiguration",
                "s3:PutStorageLensConfiguration"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/key1": "value1"
                }
            },
            "Resource": "arn:aws:s3:us-east-1:111122223333:storage-lens/*"
        }
    ]
}
```