Habilitación de publicación de CloudWatch para S3 Storage Lens - Amazon Simple Storage Service

Habilitación de publicación de CloudWatch para S3 Storage Lens

Puede publicar métricas de Lente de almacenamiento de S3 en Amazon CloudWatch para crear una vista unificada del estado operativo en los paneles de CloudWatch. También puede utilizar las características de CloudWatch, como alarmas y acciones desencadenadas, cálculos de métricas y detección de anomalías para monitorear y tomar medidas en las métricas de Lente de almacenamiento de S3. Además, las operaciones de la API de CloudWatch habilitan las aplicaciones, incluidos los proveedores de terceros, para acceder a las métricas de Lente de almacenamiento de S3. Para obtener más información acerca de las características de CloudWatch, consulte la Guía del usuario de Amazon CloudWatch.

Las métricas de S3 Storage Lens se publican en CloudWatch, en la cuenta que es propietaria de la configuración de S3 Storage Lens. Después de habilitar la opción de publicación de CloudWatch dentro de métricas y recomendaciones avanzadas, puede acceder a las métricas de nivel de organización, cuenta y bucket en CloudWatch. Las métricas de nivel de prefijo no están disponibles en CloudWatch.

Puede habilitar el soporte de CloudWatch para configuraciones de panel nuevas o existentes mediante la consola de S3, las API de REST de Amazon S3, AWS CLI y SDK de AWS. La opción de publicación de CloudWatch está disponible para los paneles que se actualizan a métricas y recomendaciones avanzadas de Lente de almacenamiento de S3. Para conocer los precios de métricas y recomendaciones avanzadas de Lente de almacenamiento de S3, consulte Precios de Amazon S3. No se aplican cargos por publicación de métricas de CloudWatch adicionales; sin embargo, se aplican otros cargos de CloudWatch, como paneles, alarmas y llamadas a la API.

Para habilitar la opción de publicación de CloudWatch para las métricas de S3 Storage Lens, consulte los siguientes temas.

nota

Las métricas de S3 Storage Lens son métricas diarias y se publican en CloudWatch una vez al día. Cuando consulte métricas de S3 Storage Lens en CloudWatch, el periodo de la consulta debe ser de 1 día (86 400 segundos). Después de que las métricas diarias de S3 Storage Lens aparezcan en el panel de S3 Storage Lens de la consola de Amazon S3, pueden pasar unas horas para que aparezcan esas mismas métricas en CloudWatch. Cuando habilita la opción de publicación de CloudWatch para las métricas de S3 Storage Lens por primera vez, pueden pasar hasta 24 horas para que las métricas se publiquen en CloudWatch.

Actualmente, las métricas de Lente de almacenamiento de S3 no se pueden consumir a través de las transmisiones de CloudWatch.

Cuando actualiza un panel de Lente de almacenamiento de S3, no puede cambiar el nombre ni la región de origen del panel. Tampoco se puede cambiar el alcance del panel predeterminado, que tiene como alcance el almacenamiento completo de la cuenta.

Para actualizar un panel de Lente de almacenamiento de S3 a fin de habilitar la publicación de CloudWatch
  1. Inicie sesión en la AWS Management Console y abra la consola de Amazon S3 en https://console.aws.amazon.com/s3/.

  2. En el panel de navegación, elija S3 Storage Lens, (Lente de almacenamiento de S3) Dashboards (Paneles).

  3. Elija el panel que desea editar y, a continuación, elija Edit (Editar).

  4. En Metrics selection (Selección de métricas), elija Advanced metrics and recommendations (Métricas y recomendaciones avanzadas).

    Las métricas y recomendaciones avanzadas se encuentran disponibles por un cargo adicional. Esta opción incluye un periodo de 15 meses para consultas de datos, métricas de uso agregadas a nivel de prefijo y métricas de actividad agregadas por bucket, la opción de publicación de CloudWatch y recomendaciones contextuales que le ayudan a optimizar los costos de almacenamiento y aplicar las prácticas recomendadas de protección de datos. Para obtener más información, consulte Precios de Amazon S3.

  5. En Select Advanced metrics and recommendations features (Seleccionar características de métricas y recomendaciones avanzadas), seleccione CloudWatch publishing (Publicación de CloudWatch).

    importante

    Si la configuración habilita la agregación de prefijos para métricas de uso, las métricas de prefijo no se publicarán en CloudWatch. En CloudWatch, solo se publican métricas de S3 Storage Lens a nivel de bucket, cuenta y organización.

  6. Seleccione Save changes (Guardar cambios).

Para crear un nuevo panel de S3 Storage Lens que habilite la compatibilidad con CloudWatch
  1. Inicie sesión en la AWS Management Console y abra la consola de Amazon S3 en https://console.aws.amazon.com/s3/.

  2. En el panel de navegación izquierdo, elija Storage Lens, Paneles.

  3. Elija Crear panel.

  4. En General, defina las opciones de configuración siguientes:

    1. Para Dashboard name (Nombre del panel), ingrese el nombre del panel.

      Los nombres de los paneles deben tener menos de 65 caracteres y no deben contener caracteres ni espacios especiales. No puede cambiar el nombre del panel una vez que lo creó.

    2. Elija la región de origen del panel.

      Las métricas para todas las regiones incluidas en este alcance del panel se almacenan de forma centralizada en la región de origen designada. En CloudWatch, las métricas de S3 Storage Lens también están disponibles en la región de origen. No puede cambiar la región principal una vez que se creó el panel.

  5. (Opcional) Para agregar etiquetas, elija Add tag (Agregar etiqueta) e ingrese la Key (Clave) y el Value (Valor) de la etiqueta.

    nota

    Puede agregar hasta 50 etiquetas a la configuración del panel.

  6. Defina el alcance de la configuración:

    1. Si va a crear una configuración de organización, elija las cuentas que desea incluir en la configuración: Include all accounts in your configuration (Incluir todas las cuentas de la configuración) o Limit the scope to your signed-in account (Limitar el alcance a la cuenta que ha iniciado sesión).

      nota

      Cuando crea una configuración de organización que incluye todas las cuentas, solo puede incluir o excluir regiones y no buckets.

    2. Elija las regiones y los buckets que desea que Lente de almacenamiento de S3 incluya en la configuración del panel realizando lo siguiente:

      • Para incluir todas las regiones, elija Include Regions and buckets (Incluir regiones y buckets).

      • Para incluir regiones específicas, borre Include all Regions (Incluir todas las regiones). En Choose Regions to include (Elegir las regiones que desea incluir), elija las regiones que desea que S3 Storage Lens incluya en el panel.

      • Para incluir buckets específicos, borre Include all buckets (Incluir todos los buckets). En Choose buckets to include (Elegir los buckets que desea incluir), elija los buckets que desea que S3 Storage Lens incluya en el panel.

        nota

        Puede elegir hasta 50 buckets.

  7. Para Metrics selection (Selección de métricas), elija Advanced metrics and recommendations (Métricas y recomendaciones avanzadas).

    Para obtener más información sobre los precios de métricas y recomendaciones avanzadas, consulte Precios de Amazon S3.

  8. En Advanced metrics and recommendations features (Características de métricas y recomendaciones avanzadas), seleccione las opciones que desea habilitar:

    • Advanced metrics (Métricas avanzadas)

    • Publicación de CloudWatch

      importante

      Si habilita la agregación de prefijos para la configuración de S3 Storage Lens, las métricas de nivel de prefijo no se publicarán en CloudWatch. En CloudWatch, solo se publican métricas de S3 Storage Lens a nivel de bucket, cuenta y organización.

    • Agregación de prefijos

    nota

    Para obtener más información sobre características de métricas y recomendaciones avanzadas, consulte Selección de métricas.

  9. Si ha habilitado Advanced metrics (Métricas avanzadas), seleccione las Advanced metrics categories (Categorías de métricas avanzadas) que desea mostrar en el panel de Lente de almacenamiento de S3:

    • Métricas de actividad

    • Detailed status code metrics (Métricas de código de estado detalladas)

    • Advanced cost optimization metrics (Métricas de optimización de costos avanzadas)

    • Advanced data protection metrics (Métricas de protección de datos avanzadas)

    Para obtener más información sobre categorías de métricas, consulte Categorías de métricas. Para obtener una lista completa de métricas, consulte Glosario de métricas de Amazon S3 Storage Lens.

  10. (Opcional) Configure la exportación de métricas.

    Para obtener más información sobre cómo configurar la exportación de métricas, consulte el paso Uso de la consola de S3.

  11. Elija Crear panel.

El siguiente ejemplo de AWS CLI habilita la opción de publicación de CloudWatch mediante una configuración de métricas y recomendaciones avanzadas de Lente de almacenamiento de S3 de organización. Para utilizar este ejemplo, reemplace los user input placeholders con su propia información.

aws s3control put-storage-lens-configuration --account-id=555555555555 --config-id=your-configuration-id --region=us-east-1 --storage-lens-configuration=file://./config.json config.json { "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 //Mark this as false if you want only free metrics. }, "ActivityMetrics": { "IsEnabled":true //Mark this as false if you want only free metrics. }, "AdvancedCostOptimizationMetrics": { "IsEnabled":true //Mark this as false if you want only free metrics. }, "DetailedStatusCodesMetrics": { "IsEnabled":true //Mark this as false if you want only free metrics. }, "PrefixLevel":{ "StorageMetrics":{ "IsEnabled":true, //Mark this as false if you want only free metrics. "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 //Mark this as false if you want to export only free metrics. } } }
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.CloudWatchMetrics; 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 CreateAndUpdateDashboard { public static void main(String[] args) { String configurationId = "ConfigurationId"; String sourceAccountId = "Source Account ID"; String exportAccountId = "Destination Account ID"; String exportBucketArn = "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. String awsOrgARN = "arn:aws:organizations::123456789012:organization/o-abcdefgh"; Format exportFormat = Format.CSV; 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)) .withAdvancedCostOptimizationMetrics(new AdvancedCostOptimizationMetrics().withIsEnabled(true)) .withAdvancedDataProtectionMetrics(new AdvancedDataProtectionMetrics().withIsEnabled(true)) .withDetailedStatusCodesMetrics(new DetailedStatusCodesMetrics().withIsEnabled(true)) .withPrefixLevel(new PrefixLevel().withStorageMetrics(prefixStorageMetrics)); AccountLevel accountLevel = new AccountLevel() .withActivityMetrics(new ActivityMetrics().withIsEnabled(true)) .withAdvancedCostOptimizationMetrics(new AdvancedCostOptimizationMetrics().withIsEnabled(true)) .withAdvancedDataProtectionMetrics(new AdvancedDataProtectionMetrics().withIsEnabled(true)) .withDetailedStatusCodesMetrics(new DetailedStatusCodesMetrics().withIsEnabled(true)) .withBucketLevel(bucketLevel); Include include = new Include() .withBuckets(Arrays.asList("arn:aws:s3:::amzn-s3-demo-bucket")) .withRegions(Arrays.asList("us-west-2")); StorageLensDataExportEncryption exportEncryption = new StorageLensDataExportEncryption() .withSSES3(new SSES3()); S3BucketDestination s3BucketDestination = new S3BucketDestination() .withAccountId(exportAccountId) .withArn(exportBucketArn) .withEncryption(exportEncryption) .withFormat(exportFormat) .withOutputSchemaVersion(OutputSchemaVersion.V_1) .withPrefix("Prefix"); CloudWatchMetrics cloudWatchMetrics = new CloudWatchMetrics() .withIsEnabled(true); StorageLensDataExport dataExport = new StorageLensDataExport() .withCloudWatchMetrics(cloudWatchMetrics) .withS3BucketDestination(s3BucketDestination); StorageLensAwsOrg awsOrg = new StorageLensAwsOrg() .withArn(awsOrgARN); StorageLensConfiguration configuration = new StorageLensConfiguration() .withId(configurationId) .withAccountLevel(accountLevel) .withInclude(include) .withDataExport(dataExport) .withAwsOrg(awsOrg) .withIsEnabled(true); 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.putStorageLensConfiguration(new PutStorageLensConfigurationRequest() .withAccountId(sourceAccountId) .withConfigId(configurationId) .withStorageLensConfiguration(configuration) .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(); } } }

Para habilitar la opción de publicación de CloudWatch mediante la API de REST de Amazon S3, puede utilizar PutStorageLensConfiguration.

Pasos a seguir a continuación

Después de habilitar la opción de publicación de CloudWatch, puede acceder a las métricas de S3 Storage Lens en CloudWatch. También puede aprovechar las características de CloudWatch para monitorear y analizar los datos de S3 Storage Lens en CloudWatch. Para obtener más información, consulte los temas siguientes: