本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立規則以將 Amazon Quick Sight 事件傳送至 AWS Lambda
在本教學課程中,您會建立 AWS Lambda 函數,記錄 Amazon Quick Sight 帳戶中的資產事件。然後,您可以建立每當資產變更時執行該函數的規則。本教學假設您已註冊 Amazon Quick Sight。
步驟 1:建立 Lambda 函數
建立 Lambda 函數以記錄狀態變更事件。當您在建立規則時指定此函數。
-
登入 AWS 管理主控台 ,並在 https://https://console.aws.amazon.com/lambda/
開啟 AWS Lambda 主控台。 -
如果您是第一次使用 Lambda,將會看到歡迎頁面。選擇 Get Started Now (立即開始)。否則,請選擇 Create function (建立函數)。
-
選擇 Author from scratch (從頭開始撰寫)。
-
在「建立函數」頁面上,輸入 Lambda 函式的名稱與描述。例如,將函數命名為
QuickSightAssetChangeFn。 -
在執行時期中,選取 Node.js 18.x。
-
對於 Architecture (架構),選擇 x86_64。
-
對於執行角色,選擇建立具有基本 Lambda 許可的新角色或使用現有角色,然後選擇您想要的角色。
-
選擇 Create function (建立函數)。
-
在 QuickSightAssetChange 頁面上,選擇 index.js。
-
在 index.js 窗格中,刪除現有的程式碼。
-
輸入下列程式碼片段。
console.log('Loading function'); exports.handler = async (event, context) => { console.log('Received QuickSight event:', JSON.stringify(event)); }; -
選擇部署。
步驟 2:建立規則
建立規則以在每次create/update/delete Amazon Quick Sight 資產時執行 Lambda 函數。
登入 AWS 管理主控台 ,並在 https://https://console.aws.amazon.com/events/
開啟 Amazon EventBridge 主控台。 -
在導覽窗格中,選擇規則。
-
選擇建立規則。
-
輸入規則的名稱和描述。例如,輸入
QuickSightAssetChangeRule。 -
選取預設事件匯流排。
-
選擇具有事件模式的規則,然後選擇下一步。
-
在事件來源欄位中,選擇 AWS 事件或 EventBridge 合作夥伴事件。
-
在建立方法區段中,選擇自訂模式 (JSON 編輯器)。
-
在事件模式文字方塊中,輸入下列程式碼片段,然後選擇下一步。
{ "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" } } -
對於目標類型,選擇 AWS 服務和 Lambda 函式。
-
針對 Function (函數),選擇您建立的 Lambda 函數。然後選擇下一步。
-
在 Configure tags (設定標籤) 中,選擇 Next (下一步)。
-
檢閱規則中的步驟。然後,選擇 Create role (建立角色)。
步驟 3:測試規則
若要測試您的規則,請建立分析。等待一分鐘後,驗證您的 Lambda 函式是否被調用。
-
開啟位於 https://https://quicksight.aws.amazon.com/
的 Amazon Quick Sight 主控台。 -
建立新的分析。
-
在導覽窗格中,選擇 Rules (規則),然後選擇您建立的規則名稱。
-
在規則詳細資料中,選擇監控。
-
系統會將您重新導向至 Amazon CloudWatch 主控台。如果未將您重新導向,請選擇在 CloudWatch 中檢視指標。
-
在 All metrics (所有指標) 中,選擇您建立的規則名稱。該圖表指示該規則已被調用。
-
在導覽窗格中,選擇 Log groups (日誌群組)。
-
為您的 Lambda 函式選擇日誌群組名稱。例如
/aws/lambda/function-name。 -
選擇日誌串流名稱以檢視函數為您啟動的執行個體所提供的資料。您應該會看到類似以下接收的事件:
{ "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 的事件概觀。