이 문서에서는 Google API 콘솔 또는 API를 사용하여 프로젝트의 Gemini Code Assist Standard 및 Enterprise 로깅을 구성하는 방법을 설명합니다.
제한사항
Google Cloud에서 Gemini Standard 및 Enterprise의 로그 데이터 기록은 IDE 내에서 Gemini Code Assist와의 사용자 상호작용으로 제한됩니다.
또한 사용자가 VS Code 원격 분석을 사용 중지한 경우 Google Cloud를 위한 Gemini는 Gemini Code Assist Standard 및 Enterprise의 데이터를 로깅하지 않습니다.
시작하기 전에
Google Cloud 프로젝트가 결제 계정에 연결되어 있는지 확인합니다.
(선택사항) IAM 권한 부여
Gemini Code Assist Standard 및 Enterprise 로깅을 구성하려면 다음 섹션에 자세히 설명된 특정 Identity and Access Management 권한이 있어야 합니다. 이러한 권한이 커스텀 IAM 역할에 추가되었는지 확인합니다.
또는 Google Cloud를 위한 Gemini 설정 관리자 (roles/cloudaicompanion.settingsAdmin
) IAM 사전 정의된 역할을 부여할 수 있는데, 이 역할에는 Google Cloud를 위한 Gemini의 모든 관리자 설정에 필요한 필수 권한이 모두 포함되어 있습니다.
Gemini Code Assist 로깅 구성
다음 섹션에서는 Cloud Logging에서 Gemini Code Assist Standard 및 Enterprise 활동의 수집 및 저장을 사용 설정하는 데 필요한 단계를 제공합니다. 해당되는 활동으로는 다음과 같은 것들이 있습니다.
사용자 입력, 문맥 정보, 응답 등 Gemini Code Assist Standard 및 Enterprise 프롬프트 및 응답 로그
원격 분석 메타데이터, 사용자가 수락한 코드 줄 등 Gemini Code Assist Standard 및 Enterprise 메타데이터 로그
두 유형의 로그에 대한 자세한 내용은 Gemini 로그 보기를 참고하세요.
Gemini Code Assist 로깅 사용 설정
다음 옵션 중 하나를 선택합니다.
콘솔
프로젝트에서 Cloud Logging API를 사용 설정했는지 확인합니다.
구독을 소유한 프로젝트에 다음 Identity and Access Management 권한이 있는지 확인합니다.
instance.queryEffectiveSetting
instance.queryEffectiveSettingBindings
loggingSettings.create
loggingSettings.list
loggingSettings.update
loggingSettings.get
cloudaicompanion.instances.loggingSettings.use
cloudaicompanion.instances.queryEffectiveSetting
settingBindings.loggingSettingsList
settingBindings.loggingSettingsGet
settingBindings.loggingSettingsUpdate
settingBindings.loggingSettingsCreate
cloudaicompanion.settingBindings.loggingSettingsUse
cloudaicompanion.instances.queryEffectiveSettingBindings
API 콘솔에서 Gemini 관리자 페이지로 이동합니다.
Google Cloud를 위한 Gemini 페이지가 로드됩니다.
왼쪽 탐색 메뉴에서 설정을 클릭합니다.
설정 페이지가 로드됩니다.
(선택사항) Code Assist 메타데이터 로깅을 클릭하여 프로젝트에서 Gemini Code Assist Standard 및 Enterprise 사용자가 생성한 메타데이터를 기록합니다.
(선택사항) Code Assist 프롬프트 및 대답 로깅을 클릭하여 프로젝트에서 Gemini Code Assist Standard 및 Enterprise 사용자가 생성한 프롬프트와 대답을 기록합니다.
변경사항 저장을 클릭합니다.
API
Gemini Code Assist Standard 및 Enterprise의 로깅을 사용 설정하려면 loggingSettings
리소스를 사용하여 원하는 로깅 설정을 정의하고 loggingSettings.settingBindings
리소스를 사용하여 설정을 프로젝트에 바인딩하세요.
프로젝트에서 Cloud Logging API를 사용 설정했는지 확인합니다.
구독을 소유한 프로젝트에 다음 Identity and Access Management 권한이 있는지 확인합니다.
instance.queryEffectiveSetting
instance.queryEffectiveSettingBindings
loggingSettings.create
loggingSettings.list
loggingSettings.update
loggingSettings.get
cloudaicompanion.instances.loggingSettings.use
cloudaicompanion.instances.queryEffectiveSetting
settingBindings.loggingSettingsList
settingBindings.loggingSettingsGet
settingBindings.loggingSettingsUpdate
settingBindings.loggingSettingsCreate
cloudaicompanion.settingBindings.loggingSettingsUse
cloudaicompanion.instances.queryEffectiveSettingBindings
설정 및 설정별 값을 만듭니다.
토큰을 가져옵니다.
TOKEN=$(gcloud auth print-access-token)
Gemini Code Assist Standard 및 Enterprise 로그를 사용 설정합니다. 사용자 로그와 메타데이터 로그는 각각
log_prompts_and_responses
및log_metadata
필드로 사용 설정됩니다. 필드 중 하나를 사용 설정하지 않으려면 요청에서 제외하세요.다음 명령어를 실행하여 설정을 만듭니다.
curl -X POST \ -H "Authorization: Bearer $TOKEN" \ -H 'Content-Type: application/json' \ -d '{ "log_prompts_and_responses": true, "log_metadata": true, } ' \ "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings?logging_setting_id=LOGS_SETTING_ID"
다음을 바꿉니다.
CONTAINER_PROJECT_NAME
: 바인딩 리소스가 저장된 프로젝트의 프로젝트 ID. 이는 바인딩의 상위 프로젝트입니다.LOGS_SETTING_ID
: 고유한 설정 이름(예:gcalm
)
명령어가 성공하면
log_prompts_and_responses
와log_metadata
가true
로 설정된 응답 본문이 반환됩니다.{ "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/LOGS_SETTING_ID", "createTime": "2025-01-23T15:22:49.717166932Z", "updateTime": "2025-01-23T15:22:49.717166932Z", "log_prompts_and_responses": true, "log_metadata": true }
다음 명령어를 실행하여 Gemini Code Assist Standard 및 Enterprise 로그 설정 바인딩을 만듭니다.
curl -X POST \ -H "Authorization: Bearer $TOKEN" \ -H 'Content-Type: application/json' \ -d '{ "target": "projects/TARGET_PROJECT_NAME" }' \ "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/LOGS_SETTING_ID/settingBindings?setting_binding_id=LOGS_BINDING_ID"
다음을 바꿉니다.
TARGET_PROJECT_NAME
: 바인딩을 바인딩할 대상 프로젝트. 이는 컨테이너 프로젝트와 동일한 경우가 많습니다. 하지만 설정 리소스가 중복되지 않도록 설정을 여러 프로젝트에 바인딩할 수 있습니다.LOGS_BINDING_ID
: 설정을 만들 때와 동일한 SETTING_ID를 사용하지만b1
을 추가합니다. 예를 들어,gcalmb1
을 사용합니다.
명령어가 성공하면 다음 형식의 작업 메타데이터가 반환됩니다.
{ "name": "projects/<var>CONTAINER_PROJECT_NAME</var>/locations/global/operations/operation-1737646069712-62c6140bb04bb-49261230-43701daf", "metadata": { "@type": "type.googleapis.com/google.cloud.cloudaicompanion.v1.OperationMetadata", "createTime": "2025-01-23T15:27:50.076075570Z", "target": "projects/<var>TARGET_PROJECT_NAME</var>/locations/global/loggingSettings/<var>LOGS_SETTING_ID</var>/settingBindings/<var>LOGS_BINDING_ID</var>", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Gemini Code Assist 로깅 사용 중지
다음 옵션 중 하나를 선택합니다.
콘솔
구독을 소유한 프로젝트에 다음 Identity and Access Management 권한이 있는지 확인합니다.
instance.queryEffectiveSetting
instance.queryEffectiveSettingBindings
loggingSettings.delete
loggingSettings.list
loggingSettings.update
loggingSettings.get
cloudaicompanion.instances.loggingSettings.use
cloudaicompanion.instances.queryEffectiveSetting
settingBindings.loggingSettingsList
settingBindings.loggingSettingsGet
settingBindings.loggingSettingsUpdate
settingBindings.loggingSettingsDelete
cloudaicompanion.settingBindings.loggingSettingsUse
cloudaicompanion.instances.queryEffectiveSettingBindings
API 콘솔에서 Gemini 관리자 페이지로 이동합니다.
Google Cloud를 위한 Gemini 페이지가 로드됩니다.
왼쪽 탐색 메뉴에서 설정을 클릭합니다.
설정 페이지가 로드됩니다.
Code Assist 메타데이터 로깅을 클릭하여 프로젝트에서 Gemini Code Assist Standard 및 Enterprise 사용 시의 메타데이터 기록을 사용 중지합니다.
변경사항 저장을 클릭합니다.
API
Gemini Code Assist Standard 및 Enterprise의 로깅을 사용 중지하려면 loggingSetting
메서드를 사용합니다.
구독을 소유한 프로젝트에 다음 Identity and Access Management 권한이 있는지 확인합니다.
instance.queryEffectiveSetting
instance.queryEffectiveSettingBindings
loggingSettings.create
loggingSettings.list
loggingSettings.update
loggingSettings.get
cloudaicompanion.instances.loggingSettings.use
cloudaicompanion.instances.queryEffectiveSetting
settingBindings.loggingSettingsList
settingBindings.loggingSettingsGet
settingBindings.loggingSettingsUpdate
settingBindings.loggingSettingsCreate
serviceusage.services.enable
설정 및 설정별 값을 만듭니다.
토큰을 가져옵니다.
TOKEN=$(gcloud auth print-access-token)
다음 명령어를 실행하여 Gemini Code Assist Standard 및 Enterprise 로그 설정을 사용 중지합니다.
curl -X POST \ -H "Authorization: Bearer $TOKEN" \ -H 'Content-Type: application/json' \ -d '{ "log_prompts_and_responses": false, "log_metadata": false, } ' \ "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings?logging_metadata_id=LOGS_SETTING_ID"
다음을 바꿉니다.
CONTAINER_PROJECT_NAME
: 상위 프로젝트 IDLOGS_SETTING_ID
: 기존 설정 이름(예:gcalm
)명령어가 성공하면
log_prompts_and_responses
와log_metadata
가false
로 설정된 응답 본문이 반환됩니다.{ "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/LOGS_SETTING_ID", "createTime": "2025-01-23T15:22:49.717166932Z", "updateTime": "2025-01-23T15:22:49.717166932Z", "log_prompts_and_responses": false, "log_metadata": false }