event_subscriptions
Creates, updates, deletes or gets an event_subscription resource or lists event_subscriptions in a region
Overview
| Name | event_subscriptions |
| Type | Resource |
| Description | 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](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html) in the *Amazon RDS User Guide*. |
| Id | awscc.rds.event_subscriptions |
Fields
- get (all properties)
- list (identifiers only)
| Name | Datatype | Description |
|---|---|---|
tags | array | An optional array of key-value pairs to apply to this subscription. |
subscription_name | string | The name of the subscription.<br />Constraints: The name must be less than 255 characters. |
enabled | boolean | Specifies whether to activate the subscription. If the event notification subscription isn't activated, the subscription is created but not active. |
event_categories | array | 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](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.Messages.html) or the [Amazon Aurora User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Events.Messages.html). You can also see this list by using the ``DescribeEventCategories`` operation. |
sns_topic_arn | string | 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.<br />RDS doesn't support FIFO (first in, first out) topics. For more information, see [Message ordering and deduplication (FIFO topics)](https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html) in the *Amazon Simple Notification Service Developer Guide*. |
source_ids | array | 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.<br />Constraints:<br />+ If ``SourceIds`` are supplied, ``SourceType`` must also be provided.<br />+ If the source type is a DB instance, a ``DBInstanceIdentifier`` value must be supplied.<br />+ If the source type is a DB cluster, a ``DBClusterIdentifier`` value must be supplied.<br />+ If the source type is a DB parameter group, a ``DBParameterGroupName`` value must be supplied.<br />+ If the source type is a DB security group, a ``DBSecurityGroupName`` value must be supplied.<br />+ If the source type is a DB snapshot, a ``DBSnapshotIdentifier`` value must be supplied.<br />+ If the source type is a DB cluster snapshot, a ``DBClusterSnapshotIdentifier`` value must be supplied.<br />+ If the source type is an RDS Proxy, a ``DBProxyName`` value must be supplied. |
source_type | string | The type of source that is generating the events. For example, if you want to be notified of events generated by a DB instance, you set this parameter to ``db-instance``. For RDS Proxy events, specify ``db-proxy``. If this value isn't specified, all events are returned.<br />Valid Values:``db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | db-proxy | zero-etl | custom-engine-version | blue-green-deployment`` |
region | string | AWS region. |
| Name | Datatype | Description |
|---|---|---|
subscription_name | string | The name of the subscription.<br />Constraints: The name must be less than 255 characters. |
region | string | AWS region. |
For more information, see AWS::RDS::EventSubscription.
Methods
| Name | Resource | Accessible by | Required Params |
|---|---|---|---|
create_resource | event_subscriptions | INSERT | SnsTopicArn, region |
delete_resource | event_subscriptions | DELETE | Identifier, region |
update_resource | event_subscriptions | UPDATE | Identifier, PatchDocument, region |
list_resources | event_subscriptions_list_only | SELECT | region |
get_resource | event_subscriptions | SELECT | Identifier, region |
SELECT examples
- get (all properties)
- list (identifiers only)
Gets all properties from an individual event_subscription.
SELECT
region,
tags,
subscription_name,
enabled,
event_categories,
sns_topic_arn,
source_ids,
source_type
FROM awscc.rds.event_subscriptions
WHERE
region = 'us-east-1' AND
Identifier = '{{ subscription_name }}';
Lists all event_subscriptions in a region.
SELECT
region,
subscription_name
FROM awscc.rds.event_subscriptions_list_only
WHERE
region = 'us-east-1';
INSERT example
Use the following StackQL query and manifest file to create a new event_subscription resource, using stack-deploy.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO awscc.rds.event_subscriptions (
SnsTopicArn,
region
)
SELECT
'{{ sns_topic_arn }}',
'{{ region }}';
/*+ create */
INSERT INTO awscc.rds.event_subscriptions (
Tags,
SubscriptionName,
Enabled,
EventCategories,
SnsTopicArn,
SourceIds,
SourceType,
region
)
SELECT
'{{ tags }}',
'{{ subscription_name }}',
'{{ enabled }}',
'{{ event_categories }}',
'{{ sns_topic_arn }}',
'{{ source_ids }}',
'{{ source_type }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: event_subscription
props:
- name: tags
value:
- key: '{{ key }}'
value: '{{ value }}'
- name: subscription_name
value: '{{ subscription_name }}'
- name: enabled
value: '{{ enabled }}'
- name: event_categories
value:
- '{{ event_categories[0] }}'
- name: sns_topic_arn
value: '{{ sns_topic_arn }}'
- name: source_ids
value:
- '{{ source_ids[0] }}'
- name: source_type
value: '{{ source_type }}'
UPDATE example
Use the following StackQL query and manifest file to update a event_subscription resource, using stack-deploy.
/*+ update */
UPDATE awscc.rds.event_subscriptions
SET PatchDocument = string('{{ {
"Tags": tags,
"Enabled": enabled,
"EventCategories": event_categories,
"SourceIds": source_ids,
"SourceType": source_type
} | generate_patch_document }}')
WHERE
region = '{{ region }}' AND
Identifier = '{{ subscription_name }}';
DELETE example
/*+ delete */
DELETE FROM awscc.rds.event_subscriptions
WHERE
Identifier = '{{ subscription_name }}' AND
region = 'us-east-1';
Permissions
To operate on the event_subscriptions resource, the following permissions are required:
- Create
- Read
- Update
- Delete
- List
iam:CreateServiceLinkedRole,
rds:CreateEventSubscription,
rds:DescribeEventSubscriptions,
rds:ListTagsForResource,
rds:AddTagsToResource,
rds:RemoveTagsFromResource
rds:DescribeEventSubscriptions,
rds:ListTagsForResource
rds:ModifyEventSubscription,
rds:AddSourceIdentifierToSubscription,
rds:RemoveSourceIdentifierFromSubscription,
rds:DescribeEventSubscriptions,
rds:ListTagsForResource,
rds:AddTagsToResource,
rds:RemoveTagsFromResource
rds:DeleteEventSubscription,
rds:DescribeEventSubscriptions
rds:DescribeEventSubscriptions