創建一個事件規則。
接口說明
創建一個事件規則。
調試
您可以在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 錯誤碼發生變更 | 查看變更詳情 |