Skip to content

Kiro 支持为企业管理员提供逐用户活动报告,每天 UTC 凌晨 2:00 自动生成 CSV 文件并存储到指定的 Amazon S3 路径。报告涵盖每位用户的客户端类型、订阅等级、消息总数、积分消耗、超额使用量以及各模型调用量等指标。单日用户超过 1000 人时自动拆分文件。开启前需创建满足 Region 和账户要求的 S3 存储桶,并配置正确的桶策略。

管理员可以配置 Kiro 收集组织内各订阅用户的活动遥测数据,并以报告形式呈现,帮助了解具体用户的 Kiro 使用情况。

报告说明

Kiro 按客户端类型(IDE、CLI 和 Plugin)分别生成用户活动报告,每天 UTC 02:00 运行,生成 CSV 文件并存储在以下路径:

s3://bucketName/prefix/AWSLogs/accountId/KiroLogs/user_report/region/year/month/day/00/clientType_accountId_user_report_timestamp.csv

CSV 文件格式:

  • 每行对应当天与 Kiro 有交互的一位用户。
  • 每列对应一项指标(详见下方的指标说明表)。指标基于当天收集的遥测数据计算。

当天与 Kiro 交互的用户超过 1000 人时,Kiro 会自动将数据拆分为多个 CSV 文件,每个文件包含 1000 条记录,文件名后缀依次为 part_1part_2 等。

开启用户活动报告

前提条件

创建用于存放用户活动报告 CSV 文件的 Amazon S3 存储桶,该存储桶须满足以下条件:

  • 与 Kiro Profile 所在的 AWS Region 相同(该 Profile 在首次为 IAM Identity Center 用户订阅 Kiro Pro 时创建,详见 Kiro Profile支持的 Region)。
  • 与用户订阅所在的 AWS 账户相同。如果用户分布在多个 AWS 账户,则需要在每个账户中分别创建存储桶,不支持跨账户存储桶。
  • (可选但推荐)与 Prompt 日志 使用不同的存储桶。
  • 必须包含一个前缀(子文件夹),CSV 文件不能存放在存储桶根目录。
  • 配置如下桶策略(将 bucketNameRegionaccountIdprefix 替换为实际值):
json
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "KiroLogsWrite",
      "Effect": "Allow",
      "Principal": {
        "Service": "q.amazonaws.com"
      },
      "Action": [
        "s3:PutObject"
      ],
      "Resource": [
        "arn:aws:s3:::bucketName/prefix/*"
      ],
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "111122223333"
        },
        "ArnLike": {
          "aws:SourceArn": "arn:aws:codewhisperer:us-east-1:111122223333:*"
        }
      }
    }
  ]
}

操作步骤

  1. 登录 AWS 控制台。
  2. 切换到 Kiro 控制台(需要 IAM 策略:允许管理员配置 Kiro 并订阅用户 中定义的权限)。
  3. 选择 Settings(设置)
  4. Kiro user activity reports 区域选择 Edit(编辑)
  5. 开启 Collect granular metrics per user 开关。
  6. S3 location 字段中输入 S3 URI,例如:s3://amzn-s3-demo-bucket/user-activity-reports/

用户活动报告指标说明

指标名称说明
Date报告活动的日期
UserId被统计用户的 ID
Client_Type客户端类型:KIRO_IDEKIRO_CLIPLUGIN
Subscription_Tier订阅等级:Pro、ProPlus、Power
ProfileId与该用户活动关联的 Profile ID
Total_Messages发送和接收的消息总数,包含用户 Prompt、工具调用和 Kiro 响应
Chat_Conversations当天用户发起的对话轮次
Credits_Used当天从订阅计划中消耗的积分数
Overage_Enabled该用户是否已启用超额功能
Overage_Cap管理员设定的超额上限(Overage_Enabled 为 true 时有效);未启用超额时显示订阅计划的最大积分上限预设值
Overage_Credits_Used用户当天消耗的超额积分总数(仅在启用超额时有效)
Model_name_Messages各模型处理的消息数(含 Auto 模式,详见注释)

历史版本指标说明(旧版)

以下为旧版用户活动报告中包含的历史指标,供参考:

指标名称说明
Chat_AICodeLines通过 Kiro 聊天(非内联聊天)生成并被用户接受的代码行数
Chat_MessagesInteracted用户与 Kiro 聊天消息发生正向互动的次数(如点击链接、插入建议、点赞等)
Inline_AICodeLines通过内联补全建议被用户接受的代码行数
Inline_AcceptanceCount用户接受的内联补全建议数量
Inline_SuggestionsCount展示给用户的内联补全建议总数
TestGeneration_EventCount用户通过 /test 命令触发测试生成的次数
Dev_GenerationEventCount通过 /dev 命令生成代码功能的次数
CodeReview_FindingsCount代码审查功能发现的代码问题数量

常见问题

Q:用户活动报告每天几点生成?

每天 UTC 02:00 自动生成,通常在北京时间上午 10:00 可查到前一天的数据。

Q:如果同一用户在多个客户端(IDE 和 CLI)都有活动,会生成几行记录?

按客户端类型分别生成,同一用户使用了 IDE 和 CLI 则会产生两行独立记录,Client_Type 字段分别为 KIRO_IDEKIRO_CLI

Q:用户活动报告和 Prompt 日志有什么区别?

用户活动报告是聚合后的统计指标(如消息数、积分消耗),适合管理层用量分析;Prompt 日志记录每一条具体的用户输入和 Kiro 响应原文,适合合规审计和详细调试。两者建议使用不同的 S3 存储桶存放。