创建一个事件规则。
接口说明
创建一个事件规则。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用背景高亮的方式表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
eventbridge:CreateRule | create | *Rule acs:eventbridge:{#regionId}:{#accountId}:eventbus/{#EventBusName}/rule/{#RuleName} |
| 无 |
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
EventBusName | string | 是 | 事件总线名称。 | MyEventBus |
Description | string | 否 | 事件总线的描述 | SMQ的过滤规则 |
RuleName | string | 是 | 事件规则的名称 | SMQRule |
Status | string | 否 | 规则的状态。取值说明如下: ENABLE:规则已启用。规则默认状态。 DISABLE:规则已禁用。 | ENABLE |
FilterPattern | string | 是 | 事件模式,JSON 格式。取值说明如下: stringEqual 模式。 stringExpression 模式 。 每个 field 最多 5 个 expression(map 结构)。 每个 field 最多 5 个 expression(map 结构)。 | { "source": [ { "prefix": "acs." } ], "type": [ { "prefix": "oss:ObjectReplication" } ], "subject": [ { "prefix": "acs:oss:cn-hangzhou:123456789098****:my-movie-bucket/", "suffix": ".txt" } ] } |
EventTargets | array<object> | 是 | 事件目标列表。 | |
object | 是 | 事件目标。 | ||
Id | string | 是 | 自定义事件目标 Id。 | Mlm123456JHd2RsRoKw |
Type | string | 是 | 事件目标类型。更多信息,请参见事件目标参数。 | acs.mns.queue |
Endpoint | string | 否 | 投递端点链接。 | acs:mns:cn-hangzhou:123456789098****:queues/myqueue |
PushRetryStrategy | string | 否 | 推送重试策略。取值说明如下: BACKOFF_RETRY:退避重试策略。重试 3 次,每次重试的间隔时间是 10 秒到 20 秒之间的随机值。 EXPONENTIAL_DECAY_RETRY:指数衰减重试。重试 176 次,每次重试的间隔时间指数递增至 512 秒,总计重试时间为 1 天;每次重试的具体间隔为:1,2,4,8,16,32,64,128,256,512,512...512 秒(共 167 个 512)。 | BACKOFF_RETRY |
DeadLetterQueue | object | 否 | 死信队列。未处理或者超过重试次数的事件会被写入死信队列。当前死信队列支持的队列类型有消息队列 RocketMQ 版、轻量消息队列(原 MNS)、消息队列 Kafka 版和 EventBridge 事件总线。 | |
Arn | string | 否 | 死信队列的 Arn,未处理或超过重试次数的事件会被写入死信队列。支持轻量消息队列(原 MNS)和消息队列 RocketMQ 版。 | acs:mns:cn-hangzhou:123456789098****:/queues/deadletterqueue 或 acs:mq:cn-hangzhou:123456789098****:/instances/MQ_INST_123456789098****_BX8QbBPL/topic/deadlettertopic 或 acs:alikafka:cn-hangzhou:123456789098****:instance/alikafka_post-cn-123456/topic/deadlettertopic 或 acs:eventbridge:cn-hangzhou:123456789098****:eventbus/deadletterbus |
ErrorsTolerance | string | 否 | 容错策略。取值说明如下: ALL:允许容错。允许异常容错,当异常发生时不会阻塞执行,超过重试策略后会根据配置将消息投递至死信队列或直接丢弃。 NONE:禁止容错。不允许容错,当异常发生并超过重试策略配置时会阻塞执行。 | ALL |
ParamList | array<object> | 否 | 事件目标的参数。 | |
object | 否 | 事件目标的参数。 | ||
ResourceKey | string | 否 | 事件目标的资源参数。更多信息,请参见使用限制。 | body |
Form | string | 否 | 事件目标参数的格式。更多信息,请参见使用限制。 | TEMPLATE |
Value | string | 否 | 事件目标参数的值。 | {\"key\"=\"value\"} |
Template | string | 否 | 事件目标参数模板样式。 | The value of ${key} is ${value}! |
ConcurrentConfig | object | 否 | 并发控制配置。 | |
Concurrency | long | 否 | 并发数 | 2 |
请求示例
POST /openapi/createRule HTTP/1.1 Host: 123456789098****.eventbridge.cn-hangzhou.aliyuncs.com Date: Sat, 18 Apr 2020 05:30:41 GMT x-eventbridge-version: 2020-04-01 Authorization: acs vZ3VL0SuJdHi****:Jo2PbT******azYAYoYslKLvWzg= Content-Type: application/json;charset=UTF-8 Content-Length: 26
{ "EventBusName":"default", "RuleName":"MNSRule", "Description":"MNS 的过滤规则", "Status":"ENABLE", "filterPattern":"{"source": [{"prefix": "acs."}],"type": [{"prefix":"oss:ObjectReplication"}],"subject":[{"prefix":"acs:oss:cn-hangzhou:123456789098****:my-movie-bucket/", "suffix":".txt"}]}", "EventTargets":[ { "Id":"1", "Type":"acs.mns.queue", "Endpoint":"acs:mns:cn-hangzhou:123456789098****:queues/myqueue", "PushRetryStrategy":"BACKOFF_RETRY", "DeadLetterQueue":{ "Arn":"acs:mns:cn-hangzhou:123456789098****:/queues/rule-deadletterqueue" }, "ParamList":[ { "resourceKey":"queue", "form":"CONSTANT", "value":"myqueue" }, { "resourceKey":"body", "form":"TEMPLATE", "value":"{"key"="value"}", "template":"The value of ${key} is ${value}!" } ] } ] }
返回参数
示例
正常返回示例
JSON
格式
{
"Message": "Remote error. requestId: [xxxx], error code: [xxx], message: [The target in event rule is invalid! Endpoint is xxx",
"RequestId": "1AD6D598-7506-5D2C-81EA-30E3241A903A",
"Data": {
"RuleARN": "acs:eventbridge:cn-hangzhou:123456789098****:eventbus/default/rule/MNSRule"
},
"Code": "Success",
"Success": true
}
错误码
HTTP status code | 错误码 | 错误信息 |
---|---|---|
403 | ServiceNotEnable | Service not enable |
访问错误中心查看更多错误码。
变更历史
变更时间 | 变更内容概要 | 操作 |
---|---|---|
2024-09-25 | OpenAPI 错误码发生变更 | 查看变更详情 |