本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 中建立規則時設定輸入轉換器 EventBridge
建立規則時,您可以指定輸入轉換器,以便在 EventBridge 將這些事件傳送至指定目標之前,使用 處理相符的事件。您可以為 AWS 服務或API目的地的目標設定輸入轉換器。
建立目標輸入轉換器做為規則的一部分
請遵循建立規則的步驟,如 創建對 Amazon 事件做出反應的規則 EventBridge 中所述。
在步驟 3 - 選取目標中,展開其他設定。
針對設定目標輸入,從下拉式清單中選擇輸入轉換器。
按一下設定輸入轉換器。
EventBridge 會顯示設定輸入轉換器對話方塊。
-
在範例事件區段中,選擇您要測試事件模式的範例事件類型。您可以選擇 AWS 事件、合作夥伴事件或輸入您自己的自訂事件。
(選用) 展開範例輸入路徑、範本和輸出區段,以查看下列範例:
JSON 路徑如何用來定義代表事件資料的變數
如何在輸入轉換器模板中使用這些變量
EventBridge 傳送至目標的結果輸出
如需輸入轉換的詳細範例,請參閱 輸入轉換範例。
-
在目標輸入轉換器區段中,定義要在輸入範本中使用的任何變數。
變數使用JSON路徑來參考原始事件來源中的值。然後,您可以在輸入範本中參考這些變數,以便在 EventBridge 傳遞給目標的轉換事件中包含原始來源事件的資料。您最多可定義 100 個變數。輸入轉換器必須是有效的 JSON。
例如,假設您已選擇 AWS 事件 S3 物件建立作為此輸入轉換器的範例事件。然後,您可以定義在模板中使用的以下變量:
{ "requester": "$.detail.requester", "key": "$.detail.object.key", "bucket": "$.detail.bucket.name" }
(選用) 您也可以選擇複製,將輸入轉換器複製到裝置的剪貼簿。
在範本區段中,編寫您要用來決定 EventBridge 傳遞給目標的範本。
您可以使用 JSON、字串、靜態資訊、您定義的變數,以及預留變數。如需輸入轉換的詳細範例,請參閱 輸入轉換範例。
例如,假設您已經在上一個範例中定義了變數。然後,您可以編寫以下模板,該模板引用這些變量以及保留變量和靜態信息。
{ "message": "<requester> has created the object \"<key>\" in the bucket \"<bucket>\"", "RuleName": <aws.events.rule-name>, "ruleArn" : <aws.events.rule-arn>, "Transformed": "Yes" }
(選用) 您也可以選擇複製,將範本複製到裝置的剪貼簿。
-
若要測試範本,請選取產生輸出。
EventBridge 根據輸入範本處理範例事件,並顯示在輸出 下產生的轉換輸出。這是 EventBridge 將傳遞給目標以取代原始來源事件的資訊。
上述範例輸入範本所產生的輸出如下:
{ "message": "123456789012 has created the object "example-key" in the bucket "example-bucket"", "RuleName": rule-name, "ruleArn" : arn:aws:events:us-east-1:123456789012:rule/rule-name, "Transformed": "Yes" }
(選用) 您也可以選擇複製,將產生的輸出複製到裝置的剪貼簿。
選取確認。
請遵循建立規則的其餘步驟,如 創建對 Amazon 事件做出反應的規則 EventBridge 中所述。