CreateEventSubscription
创建 Amazon DocumentDB 事件通知订阅 此操作需要一个通过 Amazon DocumentDB 控制台、Amazon SNS 控制台或 Amazon SNS API 创建的主题 Amazon 资源名称(ARN)。要使用 Amazon SNS 获取 ARN,您必须在 Amazon SNS 中创建主题并订阅该主题。ARN 显示在 Amazon SNS 控制台中。
您可以指定希望收取其通知的源(SourceType
)类型。您还可以提供触发事件的 Amazon DocumentDB 源 (SourceIds
) 列表,以及为您要收到通知的事件提供事件类别列表 (EventCategories
)。例如,您可以指定 SourceType = db-instance
, SourceIds = mydbinstance1, mydbinstance2
和 EventCategories = Availability, Backup
。
如果您同时指定 SourceType
和 SourceIds
(如 SourceType = db-instance
和 SourceIdentifier = myDBInstance1
),就会收到指定源的所有 db-instance
事件。如果指定 SourceType
,但未指定 SourceIdentifier
,则将收到所有 Amazon DocumentDB 源的该源类型的事件的通知。如果您未指定 SourceType
或 SourceIdentifier
,则会收到属于您的客户账户的所有 Amazon DocumentDB 源所生成事件的通知。
请求参数
有关所有操作的通用参数的信息,请参阅通用参数。
- SnsTopicArn
-
为事件通知创建的 SNS 主题的 Amazon 资源名称(ARN)。在您创建主题并订阅到该主题时,Amazon SNS 会创建 ARN。
类型:字符串
必需:是
- SubscriptionName
-
订阅的名称。
约束:名称必须少于 255 个字符。
类型:字符串
必需:是
- Enabled
-
一个布尔值;设置为
true
可激活订阅,设置为false
可创建订阅但不激活它。类型:布尔值
必需:否
- EventCategories.EventCategory.N
-
您想要订阅到的
SourceType
的事件类别列表。类型:字符串数组
必需:否
- SourceIds.SourceId.N
-
为其返回事件的事件源的标识符列表。如果未指定,则响应中包含所有源。标识符必须以字母开头,并且只能包含 ASCII 字母、数字和连字符,不能以连字符结尾,也不能包含两个连续的连字符。
约束:
-
如果提供了
SourceIds
,则必须提供SourceType
。 -
如果源类型是实例,则必须提供
DBInstanceIdentifier
。 -
如果源类型是安全组,则必须提供
DBSecurityGroupName
。 -
如果源类型是参数组,则必须提供
DBParameterGroupName
。 -
如果源类型是快照,则必须提供
DBSnapshotIdentifier
。
类型:字符串数组
必需:否
-
- SourceType
-
生成事件的源的类型。例如,如果您希望收到关于实例生成的事件的通知,将此参数设置为
db-instance
。如果未指定该值,则将返回所有事件。有效值:
db-instance
,db-cluster
,db-parameter-group
,db-security-group
,db-cluster-snapshot
类型:字符串
必需:否
- Tags.Tag.N
-
要分配给事件订阅的标签。
类型:Tag 对象数组
必需:否
响应元素
服务返回以下元素。
- EventSubscription
-
有关您已订阅事件的详细信息。
类型:EventSubscription 对象
错误
有关所有操作的常见错误的信息,请参阅常见错误。
- EventSubscriptionQuotaExceeded
-
您已达到事件订阅的最大数目。
HTTP 状态代码:400
- SNSInvalidTopic
-
Amazon SNS 已回复,指定的主题存在问题。
HTTP 状态代码:400
- SNSNoAuthorization
-
您没有发布到 SNS 主题的 Amazon 资源名称(ARN)上的权限。
HTTP 状态代码:400
- SNSTopicArnNotFound
-
SNS 主题的 Amazon 资源名称(ARN)不存在。
HTTP 状态代码:404
- SourceNotFound
-
找不到请求的源。
HTTP 状态代码:404
- SubscriptionAlreadyExist
-
提供的订阅名称已经存在。
HTTP 状态代码:400
- SubscriptionCategoryNotFound
-
提供的类别不存在。
HTTP 状态代码:404
另请参阅
有关在特定语言的 Amazon SDK 中使用此 API 的更多信息,请参阅以下内容: