全部产品
Search
文档中心

事件总线EventBridge:CreateRule - 创建一个事件规则

更新时间:Nov 01, 2024

创建一个事件规则。

接口说明

创建一个事件规则。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
eventbridge:CreateRulecreate
  • Rule
    acs:eventbridge:{#regionId}:{#accountId}:eventbus/{#EventBusName}/rule/{#RuleName}

请求参数

名称类型必填描述示例值
EventBusNamestring

事件总线名称。

MyEventBus
Descriptionstring

事件总线的描述

MNS的过滤规则
RuleNamestring

事件规则的名称

MNSRule
Statusstring

规则的状态。取值说明如下: ENABLE:规则已启用。规则默认状态。 DISABLE:规则已禁用。

ENABLE
FilterPatternstring

事件模式,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\"}]}
EventTargetsarray<object>

事件目标列表。

object

事件目标。

Idstring

自定义事件目标 Id。

Mlm123456JHd2RsRoKw
Typestring

事件目标类型。更多信息,请参见事件目标参数

acs.mns.queue
Endpointstring

投递端点链接。

acs:mns:cn-hangzhou:123456789098****:queues/myqueue
PushRetryStrategystring

推送重试策略。取值说明如下: 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
DeadLetterQueueobject

死信队列。未处理或者超过重试次数的事件会被写入死信队列。当前死信队列支持的队列类型有消息队列 RocketMQ 版、消息服务 MNS、消息队列 Kafka 版和 EventBridge 事件总线。

Arnstring

死信队列的 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
ErrorsTolerancestring

容错策略。取值说明如下: ALL:允许容错。允许异常容错,当异常发生时不会阻塞执行,超过重试策略后会根据配置将消息投递至死信队列或直接丢弃。 NONE:禁止容错。不允许容错,当异常发生并超过重试策略配置时会阻塞执行。

ALL
ParamListarray<object>

事件目标的参数。

object

事件目标的参数。

ResourceKeystring

事件目标的资源参数。更多信息,请参见使用限制

body
Formstring

事件目标参数的格式。更多信息,请参见使用限制

TEMPLATE
Valuestring

事件目标参数的值。

{\"key\"=\"value\"}
Templatestring

事件目标参数模板样式。

The value of ${key} is ${value}!

请求示例

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"}]}", "Targets":[ { "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}!" } ] } ] }

返回参数

名称类型描述示例值
object
Messagestring

错误信息

Remote error. requestId: [xxxx], error code: [xxx], message: [The target in event rule is invalid! Endpoint is xxx
RequestIdstring

请求 id。

1AD6D598-7506-5D2C-81EA-30E3241A903A
Dataobject

返回数据

RuleARNstring

事件规则的 ARN,用于授权。

acs:eventbridge:cn-hangzhou:123456789098****:eventbus/default/rule/MNSRule
Codestring

接口返回码:Success:表示成功。 其它:表示错误码。错误码详情,请参见错误码。

Success
Successboolean

操作成功返回 true。

true

示例

正常返回示例

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错误码错误信息
403ServiceNotEnableService not enable

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2024-09-25OpenAPI 错误码发生变更查看变更详情