Skip to content

Resource: awsDbEventSubscription

Provides a DB event subscription resource.

Example Usage

/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as aws from "./.gen/providers/aws";
const awsDbInstanceDefault = new aws.dbInstance.DbInstance(this, "default", {
  allocatedStorage: 10,
  dbSubnetGroupName: "my_database_subnet_group",
  engine: "mysql",
  engineVersion: "5.6.17",
  instanceClass: "db.t2.micro",
  name: "mydb",
  parameterGroupName: "default.mysql5.6",
  password: "bar",
  username: "foo",
});
const awsSnsTopicDefault = new aws.snsTopic.SnsTopic(this, "default_1", {
  name: "rds-events",
});
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
awsSnsTopicDefault.overrideLogicalId("default");
const awsDbEventSubscriptionDefault =
  new aws.dbEventSubscription.DbEventSubscription(this, "default_2", {
    eventCategories: [
      "availability",
      "deletion",
      "failover",
      "failure",
      "low storage",
      "maintenance",
      "notification",
      "read replica",
      "recovery",
      "restoration",
    ],
    name: "rds-event-sub",
    snsTopic: awsSnsTopicDefault.arn,
    sourceIds: [awsDbInstanceDefault.id],
    sourceType: "db-instance",
  });
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
awsDbEventSubscriptionDefault.overrideLogicalId("default");

Argument Reference

The following arguments are supported:

  • name - (Optional) The name of the DB event subscription. By default generated by Terraform.
  • namePrefix - (Optional) The name of the DB event subscription. Conflicts with name.
  • snsTopic - (Required) The SNS topic to send events to.
  • sourceIds - (Optional) A list of identifiers of the event sources for which events will be returned. If not specified, then all sources are included in the response. If specified, a source_type must also be specified.
  • sourceType - (Optional) The type of source that will be generating the events. Valid options are dbInstance, dbSecurityGroup, dbParameterGroup, dbSnapshot, dbCluster or dbClusterSnapshot. If not set, all sources will be subscribed to.
  • eventCategories - (Optional) A list of event categories for a SourceType that you want to subscribe to. See http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html or run awsRdsDescribeEventCategories.
  • enabled - (Optional) A boolean flag to enable/disable the subscription. Defaults to true.
  • tags - (Optional) A map of tags to assign to the resource. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Attributes Reference

In addition to all arguments above, the following attributes are exported:

  • id - The name of the RDS event notification subscription
  • arn - The Amazon Resource Name of the RDS event notification subscription
  • customerAwsId - The AWS customer account associated with the RDS event notification subscription
  • tagsAll - A map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.

Timeouts

Configuration options:

  • create - (Default 40M)
  • delete - (Default 40M)
  • update - (Default 40M)

Import

DB Event Subscriptions can be imported using the name, e.g.,

$ terraform import aws_db_event_subscription.default rds-event-sub