教學課程:監聽 Amazon OpenSearch 服務 EventBridge 事件 - Amazon OpenSearch Service

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

教學課程:監聽 Amazon OpenSearch 服務 EventBridge 事件

在本教學中,您會設定一個簡單的 AWS Lambda 函數,以偵聽 Amazon Ser OpenSearch vice 事件並將其寫入 CloudWatch 日誌記錄串流。

必要條件

本教學課程假設您擁有現有的 OpenSearch 服務網域。若您尚未建立網域,請依照 建立和管理 Amazon OpenSearch Service 網域 中的步驟建立一個。

步驟 1:建立 Lambda 函數

在此程序中,您可以建立簡單的 Lambda 函數,做為服 OpenSearch 務事件訊息的目標。

若要建立目標 Lambda 函數

  1. 請在以下位置開啟 AWS Lambda 主控台。 https://console.aws.amazon.com/lambda/

  2. 選擇 Create function (建立函數) 和 Author from scratch (從頭開始撰寫)。

  3. 對於 Function name (函數名稱),輸入 event-handler

  4. 針對執行階段,選擇 Python 3.8

  5. 選擇建立函數

  6. Function code (函數程式碼) 區段中,編輯範本程式碼以符合下列範例:

    import json def lambda_handler(event, context): if event["source"] != "aws.es": raise ValueError("Function only supports input from events with a source type of: aws.es") print(json.dumps(event))

    這是一個簡單的 Python 3.8 函數,打印 OpenSearch 服務發送的事件。如果所有項目都設定正確,則在本教學課程結束時,事件詳細資料會顯示在與此 Lambda 函數相關聯的 CloudWatch 記錄資料流中。

  7. 選擇部署

步驟 2:註冊事件規則

在此步驟中,您會建立擷取 OpenSearch Service 網域中事件的 EventBridge 規則。此規則會擷取定義它的帳戶中的所有事件。事件訊息本身包含事件來源資訊,包括其來源的網域。您可以使用此資訊以程式設計方式篩選和排序事件。

若要建立 EventBridge 規則

  1. 請在以下位置開啟 EventBridge 主控台。 https://console.aws.amazon.com/events/

  2. 選擇建立規則

  3. 將規則命名為 event-rule

  4. 選擇下一步

  5. 對於事件模式,請選取AWS 服務Amazon OpenSearch 服務所有事件。此模式適用於您的所有 OpenSearch 服務域和每個 OpenSearch 服務事件。或者,您可以建立一個更針對性的模式,來篩選掉一些結果。

  6. 按下 Next (下一步)。

  7. 對於目標,選擇 Lambda function (Lambda 函數)。在函數下拉式選單中,選擇 event-handler

  8. 按下 Next (下一步)。

  9. 跳過標籤,然後再按一次 Next (下一步)。

  10. 檢閱組態,然後選擇 Create rule (建立規則)。

步驟 3:測試組態

下次您在 OpenSearch 服務主控台的 [通知] 區段收到通知時,如果所有項目設定正確,則會觸發 Lambda 函數,並將事件資料寫入函數的 CloudWatch 記錄檔資料流中。

若要測試組態

  1. 請在以下位置開啟 CloudWatch 主控台。 https://console.aws.amazon.com/cloudwatch/

  2. 在導覽窗格中,選擇 Logs (日誌),然後選取 Lambda 函數的日誌群組 (例如,/aws/lambda/event-handler)。

  3. 選取日誌串流,以檢視事件資料。