AWS::RDS::EventSubscription - AWS CloudFormation

AWS::RDS::EventSubscription

The AWS::RDS::EventSubscription resource allows you to receive notifications for Amazon Relational Database Service events through the Amazon Simple Notification Service (Amazon SNS). For more information, see Using Amazon RDS Event Notification in the Amazon RDS User Guide.

Syntax

To declare this entity in your AWS CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::RDS::EventSubscription", "Properties" : { "Enabled" : Boolean, "EventCategories" : [ String, ... ], "SnsTopicArn" : String, "SourceIds" : [ String, ... ], "SourceType" : String, "SubscriptionName" : String, "Tags" : [ Tag, ... ] } }

YAML

Type: AWS::RDS::EventSubscription Properties: Enabled: Boolean EventCategories: - String SnsTopicArn: String SourceIds: - String SourceType: String SubscriptionName: String Tags: - Tag

Properties

Enabled

Specifies whether to activate the subscription. If the event notification subscription isn't activated, the subscription is created but not active.

Required: No

Type: Boolean

Update requires: No interruption

EventCategories

A list of event categories for a particular source type (SourceType) that you want to subscribe to. You can see a list of the categories for a given source type in the "Amazon RDS event categories and event messages" section of the Amazon RDS User Guide or the Amazon Aurora User Guide. You can also see this list by using the DescribeEventCategories operation.

Required: No

Type: Array of String

Update requires: No interruption

SnsTopicArn

The Amazon Resource Name (ARN) of the SNS topic created for event notification. SNS automatically creates the ARN when you create a topic and subscribe to it.

Note

RDS doesn't support FIFO (first in, first out) topics. For more information, see Message ordering and deduplication (FIFO topics) in the Amazon Simple Notification Service Developer Guide.

Required: Yes

Type: String

Update requires: Replacement

SourceIds

The list of identifiers of the event sources for which events are returned. If not specified, then all sources are included in the response. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens. It can't end with a hyphen or contain two consecutive hyphens.

Constraints:

  • If a SourceIds value is supplied, SourceType must also be provided.

  • If the source type is a DB instance, a DBInstanceIdentifier value must be supplied.

  • If the source type is a DB cluster, a DBClusterIdentifier value must be supplied.

  • If the source type is a DB parameter group, a DBParameterGroupName value must be supplied.

  • If the source type is a DB security group, a DBSecurityGroupName value must be supplied.

  • If the source type is a DB snapshot, a DBSnapshotIdentifier value must be supplied.

  • If the source type is a DB cluster snapshot, a DBClusterSnapshotIdentifier value must be supplied.

Required: No

Type: Array of String

Update requires: No interruption

SourceType

The type of source that is generating the events. For example, if you want to be notified of events generated by a DB instance, set this parameter to db-instance. If this value isn't specified, all events are returned.

Valid values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot

Required: No

Type: String

Update requires: No interruption

SubscriptionName

The name of the subscription.

Constraints: The name must be less than 255 characters.

Required: No

Type: String

Maximum: 255

Update requires: Replacement

Tags

An optional array of key-value pairs to apply to this subscription.

Required: No

Type: Array of Tag

Maximum: 50

Update requires: No interruption

Return values

Ref

When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns the name of the RDS event subscription.

For more information about using the Ref function, see Ref.

Examples

The following example creates an event subscription for an existing database instance db-instance-1 and a database with the logical ID myDBInstance, which is declared elsewhere in the same template.

JSON

{ "myEventSubscription": { "Type": "AWS::RDS::EventSubscription", "Properties": { "EventCategories": [ "configuration change", "failure", "deletion" ], "SnsTopicArn": "arn:aws:sns:us-west-2:123456789012:example-topic", "SourceIds": [ "db-instance-1", { "Ref": "myDBInstance" } ], "SourceType": "db-instance", "Enabled": false } } }

YAML

--- myEventSubscription: Type: 'AWS::RDS::EventSubscription' Properties: EventCategories: - configuration change - failure - deletion SnsTopicArn: 'arn:aws:sns:us-west-2:123456789012:example-topic' SourceIds: - db-instance-1 - !Ref myDBInstance SourceType: db-instance Enabled: false