建立規則以將 Amazon Quick Sight 事件傳送至 AWS Lambda - Amazon Quick Suite

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

建立規則以將 Amazon Quick Sight 事件傳送至 AWS Lambda

在本教學課程中,您會建立 AWS Lambda 函數,記錄 Amazon Quick Sight 帳戶中的資產事件。然後,您可以建立每當資產變更時執行該函數的規則。本教學假設您已註冊 Amazon Quick Sight。

步驟 1:建立 Lambda 函數

建立 Lambda 函數以記錄狀態變更事件。當您在建立規則時指定此函數。

  1. 登入 AWS 管理主控台 ,並在 https://https://console.aws.amazon.com/lambda/ 開啟 AWS Lambda 主控台。

  2. 如果您是第一次使用 Lambda,將會看到歡迎頁面。選擇 Get Started Now (立即開始)。否則,請選擇 Create function (建立函數)

  3. 選擇 Author from scratch (從頭開始撰寫)

  4. 在「建立函數」頁面上,輸入 Lambda 函式的名稱與描述。例如,將函數命名為 QuickSightAssetChangeFn

  5. 執行時期中,選取 Node.js 18.x

  6. 對於 Architecture (架構),選擇 x86_64

  7. 對於執行角色,選擇建立具有基本 Lambda 許可的新角色使用現有角色,然後選擇您想要的角色。

  8. 選擇 Create function (建立函數)

  9. QuickSightAssetChange 頁面上,選擇 index.js

  10. index.js 窗格中,刪除現有的程式碼。

  11. 輸入下列程式碼片段。

    console.log('Loading function'); exports.handler = async (event, context) => { console.log('Received QuickSight event:', JSON.stringify(event)); };
  12. 選擇部署

步驟 2:建立規則

建立規則以在每次create/update/delete Amazon Quick Sight 資產時執行 Lambda 函數。

  1. 登入 AWS 管理主控台 ,並在 https://https://console.aws.amazon.com/events/ 開啟 Amazon EventBridge 主控台。

  2. 在導覽窗格中,選擇規則

  3. 選擇建立規則

  4. 輸入規則的名稱和描述。例如,​輸入 QuickSightAssetChangeRule

  5. 選取預設事件匯流排。

  6. 選擇具有事件模式的規則,然後選擇下一步

  7. 事件來源欄位中,選擇 AWS 事件或 EventBridge 合作夥伴事件

  8. 建立方法區段中,選擇自訂模式 (JSON 編輯器)

  9. 事件模式文字方塊中,輸入下列程式碼片段,然後選擇下一步

    { "source": ["aws.quicksight"] }

    或者,您可以建立僅訂閱 Amazon Quick Sight 中事件類型子集的規則。例如,只有在將資產新增至 ID 為 77e307e8-b41b-472a-90e8-fe3f471537be 的資料夾或從中移除資產時,才會觸發下列規則。

    { "source": ["aws.quicksight"], "detail-type": ["QuickSight Folder Membership Updated"], "detail": { "folderId": "77e307e8-b41b-472a-90e8-fe3f471537be" } }
  10. 對於目標類型,選擇 AWS 服務Lambda 函式

  11. 針對 Function (函數),選擇您建立的 Lambda 函數。然後選擇下一步

  12. Configure tags (設定標籤) 中,選擇 Next (下一步)。

  13. 檢閱規則中的步驟。然後,選擇 Create role (建立角色)。

步驟 3:測試規則

若要測試您的規則,請建立分析。等待一分鐘後,驗證您的 Lambda 函式是否被調用。

  1. 開啟位於 https://https://quicksight.aws.amazon.com/ 的 Amazon Quick Sight 主控台。

  2. 建立新的分析。

  3. 在導覽窗格中,選擇 Rules (規則),然後選擇您建立的規則名稱。

  4. 規則詳細資料中,選擇監控

  5. 系統會將您重新導向至 Amazon CloudWatch 主控台。如果未將您重新導向,請選擇在 CloudWatch 中檢視指標

  6. All metrics (所有指標) 中,選擇您建立的規則名稱。該圖表指示該規則已被調用。

  7. 在導覽窗格中,選擇 Log groups (日誌群組)。

  8. 為您的 Lambda 函式選擇日誌群組名稱。例如 /aws/lambda/function-name

  9. 選擇日誌串流名稱以檢視函數為您啟動的執行個體所提供的資料。您應該會看到類似以下接收的事件:

    { "version": "0", "id": "3acb26c8-397c-4c89-a80a-ce672a864c55", "detail-type": "QuickSight Analysis Creation Successful", "source": "aws.quicksight", "account": "123456789012", "time": "2023-10-30T22:06:31Z", "region": "us-east-1", "resources": ["arn:aws:quicksight:us-east-1:123456789012:analysis/e5f37119-e24c-4874-901a-af9032b729b5"], "detail": { "analysisId": "e5f37119-e24c-4874-901a-af9032b729b5" } }

如需 JSON 格式的 Amazon Quick Sight 事件範例,請參閱 Amazon Quick Sight 的事件概觀