將 CloudEvents 活動傳送至API目的地 - Amazon EventBridge

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

將 CloudEvents 活動傳送至API目的地

CloudEvents 是事件格式化的供應商中立規格,其目標是在服務、平台和系統之間提供互通性。您可以使用 EventBridge 將 AWS 服務事件傳送至目標 (例如目的API地) CloudEvents 之前,將服務事件轉換為。

注意

下列程序說明如何將來源事件轉換成結構 CloudEvents模式。在 CloudEvents 規格中,結構模式消息是將整個事件(屬性和數據)編碼到事件的有效負載中的消息。

如需有關 CloudEvents 規格的詳細資訊,請參閱雲端文字 .io

使用控制台將 AWS 事件轉換為 CloudEvents 格式

若要在傳遞至目標之前將事件轉換為 CloudEvents 格式,請先建立事件匯流排規則。在定義規則的過程中,您可以使用輸入 EventBridge 轉換器在傳送至您指定的目標之前發生轉換事件。

  1. 然後依照 創建對 Amazon 事件做出反應的規則 EventBridge 程序中的步驟進行操作。

  2. 選取目標步驟中,當系統提示您選擇API目標作為目標類型時:

    1. 選擇EventBridge API目的地

    2. 執行以下任意一項:

      • 選擇使用現有的API目的地並選擇現有的API目的地

      • 選擇 [建立新API目的地] 並指定必要的設定以定義新的API目的地。

        如需指定所需設定的詳細資訊,請參閱在 Amazon 創建一個API目的地 EventBridge

    3. 為事件指定必要的內容類型標頭參數 CloudEvents :

      • 在「表頭參數」下選擇「新增標頭參數

      • 對於索引鍵,請指定Content-Type

        對於「」,請指定application/cloudevents+json; charset=UTF-8

  3. 指定目標的執行角色。

  4. 定義輸入轉換器,將來源事件資料轉換為以下 CloudEvents 格式:

    1. 其他設定下,對於設定目標輸入,選擇輸入變壓器

      然後選擇設定輸入變壓器

    2. 在「目標輸入變壓器」下,指定「輸入路徑」。

      在下面的輸入路徑中,region 屬性是 CloudEvents 格式的自定義擴展屬性。因此,它不是必需的 CloudEvents 遵守規範。

      CloudEvents 允許您使用和創建未在核心規格中定義的擴展屬性。如需詳細資訊,包括已知的擴充功能屬性清單,請參閱的CloudEvents 規格文件中的CloudEvents 擴充功能屬性 GitHub。

      { "detail": "$.detail", "detail-type": "$.detail-type", "id": "$.id", "region": "$.region", "source": "$.source", "time": "$.time" }
    3. 在「範本」中,輸入要將來源事件資料轉換為 CloudEvents 格式的範本。

      在下面的模板中,不region是嚴格要求的,因為輸入路徑中的region屬性是 CloudEvents 規格的擴展屬性。

      { "specversion":"1.0", "id":<id>, "source":<source>, "type":<detail-type>, "time":<time>, "region":<region>, "data":<detail> }
  5. 按照程序步驟完成建立規則。