StorageLens
The StorageLens resource allows you to manage AWS S3 StorageLens configurations for enhanced visibility into your S3 storage usage and activity.
Minimal Example
Section titled “Minimal Example”Create a basic StorageLens configuration with essential properties.
import AWS from "alchemy/aws/control";
const basicStorageLens = await AWS.S3.StorageLens("basicStorageLens", { StorageLensConfiguration: { Id: "basic-s3-storage-lens", IsEnabled: true, StorageLensConfiguration: { DataExport: { S3BucketDestination: { Format: "CSV", AccountId: "123456789012", Bucket: "arn:aws:s3:::my-storage-lens-bucket", Prefix: "storage-lens-data/", OutputSchema: "Redacted" }, Metrics: { IsEnabled: true, Metrics: [ { MetricName: "AllObjects", IsEnabled: true } ] } }, Include: { Buckets: [ { BucketName: "my-example-bucket" } ] } } }, Tags: [ { Key: "Environment", Value: "Production" } ]});
Advanced Configuration
Section titled “Advanced Configuration”Configure a StorageLens with more advanced options, such as detailed metrics and additional filters.
const advancedStorageLens = await AWS.S3.StorageLens("advancedStorageLens", { StorageLensConfiguration: { Id: "advanced-s3-storage-lens", IsEnabled: true, StorageLensConfiguration: { DataExport: { S3BucketDestination: { Format: "Parquet", AccountId: "123456789012", Bucket: "arn:aws:s3:::another-storage-lens-bucket", Prefix: "detailed-storage-lens-data/", OutputSchema: "Complete" }, Metrics: { IsEnabled: true, Metrics: [ { MetricName: "AllObjects", IsEnabled: true }, { MetricName: "StorageBytes", IsEnabled: true } ] } }, Include: { Buckets: [ { BucketName: "my-advanced-bucket" } ], Regions: ["us-east-1", "us-west-2"] }, Exclude: { Buckets: [ { BucketName: "my-archive-bucket" } ] } } }, Tags: [ { Key: "Environment", Value: "Staging" }, { Key: "Department", Value: "Finance" } ]});
Data Export Configuration
Section titled “Data Export Configuration”Demonstrate how to set up a StorageLens with specific data export configurations.
const exportStorageLens = await AWS.S3.StorageLens("exportStorageLens", { StorageLensConfiguration: { Id: "export-s3-storage-lens", IsEnabled: true, StorageLensConfiguration: { DataExport: { S3BucketDestination: { Format: "CSV", AccountId: "123456789012", Bucket: "arn:aws:s3:::export-storage-lens-bucket", Prefix: "export-data/", OutputSchema: "Complete" }, Metrics: { IsEnabled: true, Metrics: [ { MetricName: "AllObjects", IsEnabled: true }, { MetricName: "DataBytes", IsEnabled: true } ] } }, Include: { Buckets: [ { BucketName: "my-data-bucket" } ] } } }, Tags: [ { Key: "Purpose", Value: "Data Analysis" } ]});