사용자별 활동 조회

사용자 활동 리포트로 관리자가 조직의 Kiro 사용 현황을 감사하고 추적하는 방법을 안내합니다.

조직에 속한 Kiro 구독자의 사용자별 활동 텔레메트리를 수집하도록 Kiro를 구성하고, 이를 일별 CSV 리포트로 전달받을 수 있습니다. 이 리포트를 사용해 사용량을 감사하고, 라이선스 할당을 최적화하며, 크레딧 및 초과 사용량을 추적하고, 개별 사용자가 여러 클라이언트에서 Kiro와 어떻게 상호작용하는지 파악할 수 있습니다.

리포트 소개

매일 협정 세계시(UTC) 오전 2시(02:00)에 Kiro는 클라이언트 유형(IDE, CLI, Plugin)별로 CSV 리포트를 생성하여 사용자의 S3 버킷에 기록합니다.

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

사용자 활동 리포트 활성화

참고: 사용자 활동 리포트를 활성화하면 Kiro가 사용자 텔레메트리를 수집하여 사용자의 계정에 있는 S3 버킷에 저장합니다. 이 기능은 관리자 수준에서 제어되며 개별 사용자가 직접 설정할 수 없습니다.

사전 준비

사용자 활동 리포트 CSV 파일을 저장할 Amazon S3 버킷을 생성합니다. 버킷은 다음 조건을 충족해야 합니다.

{
  "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": "accountId"
        },
        "ArnLike": {
          "aws:SourceArn": "arn:aws:codewhisperer:region:accountId:*"
        }
      }
    }
  ]
}

Amazon S3 버킷의 데이터를 보호하는 방법은 Amazon Simple Storage Service 사용 설명서암호화를 통한 데이터 보호를 참고하세요.

사용자 활동 리포트를 활성화하려면

  1. AWS 콘솔에 로그인합니다.
  2. Kiro 콘솔로 전환합니다. Kiro 콘솔을 사용하려면 정책: 관리자가 Kiro를 구성하고 사용자를 구독하도록 허용에 정의된 권한이 필요합니다.
  3. Settings를 선택합니다.
  4. Kiro user activity reports에서 Edit을 선택합니다.
  5. Collect granular metrics per user를 토글합니다.
  6. S3 location에 CSV 리포트를 저장할 Amazon S3 URI를 입력합니다. 예: s3://amzn-s3-demo-bucket/user-activity-reports/

활성화 후

첫 CSV 리포트는 리포트를 활성화한 이후 처음 도래하는 UTC 오전 2시에 생성되며, 이후 매일 새 파일이 기록됩니다. 리포트가 버킷에 쌓이면 Amazon Athena로 쿼리하거나, Amazon QuickSight로 추세를 시각화하거나, 기존 분석 파이프라인으로 가져올 수 있습니다.

사용자별 상세 없이 Kiro 사용 현황을 한눈에 보려면 대시보드에서 Kiro 사용량 조회를 참고하세요. 사용자 프롬프트의 내용까지 수집하려면 프롬프트 로깅을 참고하세요.

사용자 활동 리포트 지표

다음 표는 Kiro가 생성하는 사용자 활동 리포트에 포함된 지표를 설명합니다.

지표 이름설명
Date리포트 활동 날짜
UserId활동이 보고되는 사용자의 ID
Client_TypeKIRO_IDE, KIRO_CLI 또는 PLUGIN
Chat_Conversations해당 일자에 사용자가 진행한 대화 수
Credits_Used해당 일자에 사용자 구독 플랜에서 소비된 크레딧
Overage_CapOverage_Enabled가 true일 때 관리자가 설정한 초과 사용 한도. 초과 사용이 활성화되지 않은 경우, 이 필드는 구독 플랜에 포함된 최대 크레딧을 사전 설정값으로 표시합니다
Overage_Credits_Used초과 사용이 활성화된 경우 사용자가 사용한 초과 크레딧 총량
Overage_Enabled해당 사용자에 대해 초과 사용이 활성화되어 있는지 여부
ProfileId사용자 활동과 연결된 프로필
Subscription_TierKiro 구독 플랜 - Pro, ProPlus, ProMax, Power
Total_MessagesKiro와 주고받은 메시지 수. 사용자 프롬프트, 도구 호출, Kiro 응답을 포함합니다
New_User사용자 구독이 신규인지 여부. 사용자가 리포트 날짜에 Kiro 구독을 활성화한 경우 이 지표는 true입니다
User_Email사용자의 이메일 주소
model_name_messages특정 모델이 사용자에 대해 처리한 메시지 수(Auto 포함)

리포트 구조

  1. 리포트는 정적 열(모델 메시지를 제외한 모든 필드)과 동적 열(모델 메시지)로 구성됩니다.
  2. 모델 메시지 열의 개수는 리포트 날짜에 사용된 모델 수에 따라 달라집니다.
  3. 모델 메시지 열 이름은 소문자 모델명을 알파벳 순으로 나열하며, Auto부터 시작합니다.
  4. 모델 메시지 열 값은 해당 리포트 날짜에 그 모델이 사용자에 대해 처리한 메시지 수입니다. 사용자가 특정 모델을 사용하지 않았다면 열 값은 0으로 표시됩니다.

레거시 사용자 활동 리포트 지표

레거시 사용자 활동 리포트는 새로운 클라이언트별 리포트와 함께 계속 실행됩니다. 이 리포트에는 CLI 및 플러그인 사용 데이터만 포함됩니다. 일별 CSV 파일은 동일한 S3 버킷의 다음 경로에 게시됩니다.

s3://bucketName/prefix/AWSLogs/accountId/KiroLogs/by_user_analytic/Region/year/month/day/00/accountId_by_user_analytic_timestamp.csv

CSV 파일의 구성은 다음과 같습니다.

경로의 00 세그먼트는 UTC 오전 2시 쓰기 시각을 반영하는 고정 시간 파티션입니다.

다음 표는 Kiro가 생성하는 레거시 사용자 활동 리포트에 포함된 지표를 설명합니다.

지표 이름설명
Chat_AICodeLinesKiro가 제안하고 사용자가 수락한 코드 줄 수. Kiro 채팅(인라인 채팅 아님)을 통해 생성되어 IDE에 삽입된 코드가 포함됩니다.
Chat_MessagesInteracted사용자가 Kiro와 긍정적으로 상호작용한 채팅 메시지 수. 긍정적 상호작용의 예: 링크 클릭, 제안 삽입, Kiro 응답에 대한 추천(upvote). Kiro 채팅(인라인 채팅 아님)에서 생성된 메시지가 포함됩니다.
Chat_MessagesSentKiro와 주고받은 메시지 수. Kiro 채팅(인라인 채팅 아님)의 사용자 프롬프트와 Kiro 응답이 포함됩니다.
CodeFix_AcceptanceEventCountKiro가 제안하고 사용자가 수락한 코드 수정 수. 코드 리뷰 기능으로 생성된 코드 수정에 적용됩니다.
CodeFix_AcceptedLinesKiro가 제안하고 사용자가 수락한 코드 줄 수. 코드 리뷰 기능으로 생성된 코드 줄에 적용됩니다.
CodeFix_GeneratedLinesKiro가 제안한 코드 줄 수. 코드 리뷰 기능으로 생성된 코드 줄에 적용됩니다.
CodeFix_GenerationEventCountKiro가 제안한 코드 수정 수. 코드 리뷰 기능으로 생성된 코드 수정에 적용됩니다.
CodeReview_FailedEventCount발견되었으나 Kiro가 코드 수정을 제안하지 못한 코드 이슈 수. 코드 리뷰 기능으로 발견된 코드 이슈에 적용됩니다.
CodeReview_FindingsCountKiro가 발견한 코드 이슈 수. 코드 리뷰 기능으로 발견된 코드 이슈에 적용됩니다.
CodeReview_SucceededEventCount발견되어 Kiro가 코드 수정 제안을 생성할 수 있었던 코드 이슈 수. 코드 리뷰 기능으로 발견된 코드 이슈에 적용됩니다.
Dev_AcceptanceEventCountKiro가 제안하고 사용자가 수락한 코드 기능 수. /dev 명령으로 생성된 코드 기능에 적용됩니다.
Dev_AcceptedLinesKiro가 제안하고 사용자가 수락한 코드 줄 수. /dev 명령으로 생성된 코드 줄에 적용됩니다.
Dev_GeneratedLinesKiro가 제안한 코드 줄 수. /dev 명령으로 생성된 코드 줄에 적용됩니다.
Dev_GenerationEventCountKiro가 제안한 코드 기능 수. /dev 명령으로 생성된 코드 기능에 적용됩니다.
DocGeneration_AcceptedFileUpdatesKiro가 제안하고 사용자가 수락한 파일 업데이트 수. /doc 명령으로 생성된 파일 업데이트에 적용됩니다.
DocGeneration_AcceptedFilesCreationsKiro가 제안하고 사용자가 수락한 파일 생성 수. /doc 명령으로 생성된 파일 생성에 적용됩니다.
DocGeneration_AcceptedLineAdditionsKiro가 제안하고 사용자가 수락한 문서 추가 줄 수. /doc 명령으로 생성된 문서에 적용됩니다.
DocGeneration_AcceptedLineUpdatesKiro가 제안하고 사용자가 수락한 문서 업데이트 줄 수. /doc 명령으로 생성된 문서에 적용됩니다.
DocGeneration_EventCount사용자가 /doc 명령으로 Kiro를 사용한 횟수.
DocGeneration_RejectedFileCreationsKiro가 제안했으나 사용자가 거부한 파일 생성 수. /doc 명령으로 생성된 파일 생성에 적용됩니다.
DocGeneration_RejectedFileUpdatesKiro가 제안했으나 사용자가 거부한 파일 업데이트 수. /doc 명령으로 생성된 파일 업데이트에 적용됩니다.
DocGeneration_RejectedLineAdditionsKiro가 제안했으나 사용자가 거부한 문서 추가 줄 수. /doc 명령으로 생성된 문서에 적용됩니다.
DocGeneration_RejectedLineUpdatesKiro가 제안했으나 사용자가 거부한 문서 업데이트 줄 수. /doc 명령으로 생성된 문서에 적용됩니다.
InlineChat_AcceptedLineAdditionsKiro가 제안하고 사용자가 수락한 코드 추가 줄 수. 인라인 채팅(Kiro 채팅 아님)으로 생성된 코드 추가가 포함됩니다.
InlineChat_AcceptedLineDeletionsKiro가 제안하고 사용자가 수락한 코드 삭제 줄 수. 인라인 채팅(Kiro 채팅 아님)으로 제안된 코드 삭제가 포함됩니다.
InlineChat_AcceptanceEventCount사용자가 수락한 인라인 채팅(Kiro 채팅 아님) 제안 수.
InlineChat_DismissalEventCount사용자가 무시(abandon)한 인라인 채팅(Kiro 채팅 아님) 제안 수. '무시'란 코드 제안이 표시되었지만 사용자가 계속 입력하거나 IDE에서 다른 작업을 수행하며 코드 제안을 명시적으로 수락하거나 거부하지 않은 경우를 의미합니다.
InlineChat_DismissedLineAdditionsKiro가 제안했으나 사용자가 무시한 코드 추가 줄 수. '무시'의 의미는 위와 같습니다. 인라인 채팅(Kiro 채팅 아님)으로 생성된 코드 추가가 포함됩니다.
InlineChat_DismissedLineDeletionsKiro가 제안했으나 사용자가 무시한 코드 삭제 줄 수. '무시'의 의미는 위와 같습니다. 인라인 채팅(Kiro 채팅 아님)으로 제안된 코드 삭제가 포함됩니다.
InlineChat_EventCount사용자가 참여한 인라인 채팅(Kiro 채팅 아님) 세션 수.
InlineChat_RejectedLineAdditionsKiro가 제안했으나 사용자가 거부한 코드 추가 줄 수. 인라인 채팅(Kiro 채팅 아님)으로 생성된 코드 추가가 포함됩니다.
InlineChat_RejectedLineDeletionsKiro가 제안했으나 사용자가 거부한 코드 삭제 줄 수. 인라인 채팅(Kiro 채팅 아님)으로 제안된 코드 삭제가 포함됩니다.
InlineChat_RejectionEventCount사용자가 거부한 인라인 채팅(Kiro 채팅 아님) 제안 수.
Inline_AICodeLinesKiro가 제안하고 사용자가 수락한 코드 줄 수. 인라인 제안으로 수락된 코드가 포함됩니다.
Inline_AcceptanceCount사용자가 수락한 인라인 제안 수.
Inline_SuggestionsCount사용자에게 표시된 인라인 제안 수.
TestGeneration_AcceptedLinesKiro가 제안하고 사용자가 수락한 코드 줄 수. /test 명령으로 생성된 코드 줄에 적용됩니다.
TestGeneration_AcceptedTestsKiro가 제안하고 사용자가 수락한 단위 테스트 수. /test 명령으로 생성된 단위 테스트에 적용됩니다.
TestGeneration_EventCount사용자가 /test 명령으로 Kiro를 사용한 횟수.
TestGeneration_GeneratedLinesKiro가 제안한 코드 줄 수. /test 명령으로 생성된 코드 줄에 적용됩니다.
TestGeneration_GeneratedTestsKiro가 제안한 단위 테스트 수. /test 명령으로 생성된 단위 테스트에 적용됩니다.
Transformation_EventCount사용자가 /transform 명령으로 Kiro를 사용한 횟수. 명령줄에서 코드를 변환한 경우는 제외됩니다.
Transformation_LinesGeneratedKiro가 제안한 코드 줄 수. /transform 명령으로 생성된 코드에 적용되며, 명령줄에서 변환된 코드는 제외됩니다.
Transformation_LinesIngested변환을 위해 Kiro에 제공된 코드 줄 수. /transform 명령으로 제공된 코드에 적용되며, 명령줄에서 변환을 위해 제공된 코드나 SQL 변환은 제외됩니다.