我想记录我的集成式开发环境 (IDE) 或 Amazon Q 命令行界面 (CLI) 提供的 Amazon Q 开发者版事件。我想使用 AWS CloudTrail 记录事件,但我无法在 CloudTrail 事件历史记录中找到这些事件。
简短描述
您的 IDE 或 CLI 提供的事件为 CloudTrail 数据事件。默认情况下,CloudTrail 不记录数据事件,因此您无法在 CloudTrail 事件历史记录中查看这些事件。要在 CloudTrail 中记录您的 IDE 或 CLI 提供的 Amazon Q 开发者版事件,请创建记录数据事件的自定义跟踪。
**注意:**您必须订阅 Amazon Q 开发者版专业套餐才能使用以下解决方法。您不能使用免费套餐在 CloudTrail 中记录事件,因为您使用的是 AWS 构建者 ID 进行身份验证,而不是 AWS 账户。
解决方法
要为 Amazon Q 开发者版数据事件创建跟踪,请完成以下步骤:
- 打开 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 开发者版控制台激活提示日志记录功能。
相关信息
Creating a user activity dashboard for Amazon CodeWhisperer
Exploring telemetry events in Amazon Q Developer
在 Amazon Q 开发者版中启用用户活动报告