我想記錄整合式開發環境 (IDE)或 Amazon Q 命令列介面 (CLI) 提供的 Amazon Q Developer 事件。我想使用 AWS CloudTrail 記錄事件,但在 CloudTrail Event 歷史記錄中找不到該事件。
簡短說明
您的 IDE 或 CLI 提供的事件是 CloudTrail 資料事件。預設情況下,CloudTrail 不會記錄資料事件,因此您無法在 CloudTrail Event 歷史記錄中查看事件。若要在 CloudTrail 中記錄 IDE 或 CLI 提供的 Amazon Q Developer 事件,請建立自訂追蹤以記錄資料事件。
注意: 您必須擁有 Amazon Q Developer 專業方案訂閱才能使用下列解決方案。您無法使用免費方案在 CloudTrail 中記錄事件,因為您使用 AWS 建構家 ID 而不是 AWS 帳戶進行驗證。
解決方法
若要建立 Amazon Q Developer 資料事件追蹤,請完成以下步驟:
- 開啟 CloudTrail 主控台。
- 在瀏覽窗格中,選擇 Trails (追蹤)。
- 選擇 Create Trail (建立追蹤)。
- 輸入下列路徑屬性:
追蹤名稱
用於儲存日誌的 Amazon Simple Storage Service (Amazon S3) 儲存貯體
(選用) 客戶自管 AWS Key Management Service (AWS KMS) 金鑰
注意: 若要為所有 AWS Organizations 帳戶建立追蹤,請啟動組織追蹤。您必須以具有正確權限的使用者或角色的身分登入管理或委派管理員帳戶。
- 選擇 Next (下一步)。
- 在 Choose log events (選擇日誌事件) 頁面上,選擇 Data events (資料事件)。
- 選取 CodeWhisperer。
- 選擇 Create trail (建立追蹤)。
您可以在 CloudTrail 主控台的 Trails (追蹤) 頁面上查看新的追蹤。5 分鐘後,CloudTrail 會發布顯示您帳戶 AWS API 呼叫的日誌檔案。您可以查看指定 S3 儲存貯體中的日誌檔案。
您也可以設定 CloudTrail 以將日誌檔案傳送到 Amazon CloudWatch Logs。
IDE 提供的事件包括有關 userIdentity 和 userAgent 的詳細資訊。
IDE 事件範例:
"userIdentity": {
"type": "IdentityCenterUser",
"accountId": "111122223333",
"onBehalfOf": {
"userId": "123456789-123456789-123456789-123456789-123456789",
"identityStoreArn": "arn:aws:identitystore::111122223333:identitystore/d-123456789"
}
},
"userAgent": "aws-sdk-js/0.0.1 ua/2.0 os/win32# lang/js md/nodejs#18.15.0 api/codewhispererstreaming#0.0.1 AmazonQ-For-VSCode/1.23.0",
CLI 提供的事件包括有關 userAgent 和 userContext 的詳細資訊。
CLI 事件範例:
"userAgent": "aws-sdk-rust/1.3.3 api/codewhispererruntime/0.1.1100 os/macos lang/rust/1.80.1 app/AmazonQ-For-CLI",
"userContext": {
"ideCategory": "CLI",
"operatingSystem": "MAC",
"product": "CodeWhisperer",
"ideVersion": "1.3.0"
}
注意: 內嵌或聊天提示詳細資訊在 CloudTrail 中會隱藏。若要擷取提示詳細資訊,請使用 Amazon Q Developer 主控台啟動提示記錄功能。
相關資訊
為 Amazon CodeWhisperer 建立使用者活動儀表板
在 Amazon Q Developer 中探索遙測事件
在 Amazon Q Developer 中啟用使用者活動報告