AnalyticsConfiguration

Provides a S3 bucket analytics configuration resource.

Example Usage

Add analytics configuration for entire S3 bucket and export results to a second S3 bucket

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.s3.BucketV2;
import com.pulumi.aws.s3.AnalyticsConfiguration;
import com.pulumi.aws.s3.AnalyticsConfigurationArgs;
import com.pulumi.aws.s3.inputs.AnalyticsConfigurationStorageClassAnalysisArgs;
import com.pulumi.aws.s3.inputs.AnalyticsConfigurationStorageClassAnalysisDataExportArgs;
import com.pulumi.aws.s3.inputs.AnalyticsConfigurationStorageClassAnalysisDataExportDestinationArgs;
import com.pulumi.aws.s3.inputs.AnalyticsConfigurationStorageClassAnalysisDataExportDestinationS3BucketDestinationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new BucketV2("example");
var analytics = new BucketV2("analytics");
var example_entire_bucket = new AnalyticsConfiguration("example-entire-bucket", AnalyticsConfigurationArgs.builder()
.bucket(example.bucket())
.storageClassAnalysis(AnalyticsConfigurationStorageClassAnalysisArgs.builder()
.dataExport(AnalyticsConfigurationStorageClassAnalysisDataExportArgs.builder()
.destination(AnalyticsConfigurationStorageClassAnalysisDataExportDestinationArgs.builder()
.s3BucketDestination(AnalyticsConfigurationStorageClassAnalysisDataExportDestinationS3BucketDestinationArgs.builder()
.bucketArn(analytics.arn())
.build())
.build())
.build())
.build())
.build());
}
}

Add analytics configuration with S3 object filter

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.s3.BucketV2;
import com.pulumi.aws.s3.AnalyticsConfiguration;
import com.pulumi.aws.s3.AnalyticsConfigurationArgs;
import com.pulumi.aws.s3.inputs.AnalyticsConfigurationFilterArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new BucketV2("example");
var example_filtered = new AnalyticsConfiguration("example-filtered", AnalyticsConfigurationArgs.builder()
.bucket(example.bucket())
.filter(AnalyticsConfigurationFilterArgs.builder()
.prefix("documents/")
.tags(Map.ofEntries(
Map.entry("priority", "high"),
Map.entry("class", "blue")
))
.build())
.build());
}
}

Import

S3 bucket analytics configurations can be imported using bucket:analytics, e.g.,

$ pulumi import aws:s3/analyticsConfiguration:AnalyticsConfiguration my-bucket-entire-bucket my-bucket:EntireBucket

Properties

Link copied to clipboard
val bucket: Output<String>

The name of the bucket this analytics configuration is associated with.

Link copied to clipboard

Object filtering that accepts a prefix, tags, or a logical AND of prefix and tags (documented below).

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val name: Output<String>

Unique identifier of the analytics configuration for the bucket.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Configuration for the analytics data export (documented below).

Link copied to clipboard
val urn: Output<String>