ClusterActivityStream

class ClusterActivityStream : KotlinCustomResource

Manages RDS Aurora Cluster Database Activity Streams. Database Activity Streams have some limits and requirements, refer to the Monitoring Amazon Aurora using Database Activity Streams documentation for detailed limitations and requirements.

Note: This resource always calls the RDS 2 API with the ApplyImmediately parameter set to true. This is because the provider needs the activity stream to be started in order for it to get the associated attributes. Note: This resource depends on having at least one aws.rds.ClusterInstance created. To avoid race conditions when all resources are being created together, add an explicit resource reference using the resource depends_on meta-argument. Note: This resource is available in all regions except the following: cn-north-1, cn-northwest-1, us-gov-east-1, us-gov-west-1

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.rds.Cluster;
import com.pulumi.aws.rds.ClusterArgs;
import com.pulumi.aws.rds.ClusterInstance;
import com.pulumi.aws.rds.ClusterInstanceArgs;
import com.pulumi.aws.kms.Key;
import com.pulumi.aws.kms.KeyArgs;
import com.pulumi.aws.rds.ClusterActivityStream;
import com.pulumi.aws.rds.ClusterActivityStreamArgs;
import com.pulumi.resources.CustomResourceOptions;
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 defaultCluster = new Cluster("defaultCluster", ClusterArgs.builder()
.clusterIdentifier("aurora-cluster-demo")
.availabilityZones(
"us-west-2a",
"us-west-2b",
"us-west-2c")
.databaseName("mydb")
.masterUsername("foo")
.masterPassword("mustbeeightcharaters")
.engine("aurora-postgresql")
.engineVersion("13.4")
.build());
var defaultClusterInstance = new ClusterInstance("defaultClusterInstance", ClusterInstanceArgs.builder()
.identifier("aurora-instance-demo")
.clusterIdentifier(defaultCluster.clusterIdentifier())
.engine(defaultCluster.engine())
.instanceClass("db.r6g.large")
.build());
var defaultKey = new Key("defaultKey", KeyArgs.builder()
.description("AWS KMS Key to encrypt Database Activity Stream")
.build());
var defaultClusterActivityStream = new ClusterActivityStream("defaultClusterActivityStream", ClusterActivityStreamArgs.builder()
.resourceArn(defaultCluster.arn())
.mode("async")
.kmsKeyId(defaultKey.keyId())
.build(), CustomResourceOptions.builder()
.dependsOn(defaultClusterInstance)
.build());
}
}

Import

RDS Aurora Cluster Database Activity Streams can be imported using the resource_arn, e.g.

$ pulumi import aws:rds/clusterActivityStream:ClusterActivityStream default arn:aws:rds:us-west-2:123456789012:cluster:aurora-cluster-demo

1https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/DBActivityStreams.html 2https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_StartActivityStream.html 3https://docs.aws.amazon.com/cli/latest/reference/rds/start-activity-stream.html

Properties

Link copied to clipboard

Specifies whether the database activity stream includes engine-native audit fields. This option only applies to an Oracle DB instance. By default, no engine-native audit fields are included. Defaults false.

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

The name of the Amazon Kinesis data stream to be used for the database activity stream.

Link copied to clipboard
val kmsKeyId: Output<String>

The AWS KMS key identifier for encrypting messages in the database activity stream. The AWS KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

Link copied to clipboard
val mode: Output<String>

Specifies the mode of the database activity stream. Database events such as a change or access generate an activity stream event. The database session can handle these events either synchronously or asynchronously. One of: sync, async.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val resourceArn: Output<String>

The Amazon Resource Name (ARN) of the DB cluster.

Link copied to clipboard
val urn: Output<String>