В этом документе описывается, как настроить ведение журнала Gemini Code Assist Standard и Enterprise для проекта с помощью Google API Console или API.
Ограничения
Запись данных журналов Gemini Standard и Enterprise в Google Cloud ограничивается взаимодействием пользователя с Gemini Code Assist в среде IDE.
Кроме того, Gemini для Google Cloud не регистрирует данные для Gemini Code Assist Standard и Enterprise, если пользователь отключил телеметрию VS Code.
Прежде чем начать
Убедитесь, что ваш проект Google Cloud привязан к платежной учетной записи.
(Необязательно) Предоставьте разрешения IAM
Для настройки ведения журналов Gemini Code Assist Standard и Enterprise необходимы определённые разрешения на управление удостоверениями и доступом, которые подробно описаны в следующих разделах. Убедитесь, что эти разрешения добавлены в пользовательские роли IAM .
В качестве альтернативы вы можете предоставить администратору настроек Gemini for Google Cloud ( roles/cloudaicompanion.settingsAdmin
) предопределенную роль IAM, которая включает все требуемые разрешения, нужные для работы со всеми настройками администратора Gemini for Google Cloud.
Настройте ведение журнала Gemini Code Assist
В следующих разделах приведены шаги, необходимые для включения сбора и хранения активности Gemini Code Assist Standard и Enterprise в Cloud Logging, включая:
Журналы запросов и ответов Gemini Code Assist Standard и Enterprise, такие как пользовательский ввод, контекстная информация и ответы.
Журналы метаданных Gemini Code Assist Standard и Enterprise, такие как метаданные телеметрии и строки кода, принятые пользователем.
Более подробную информацию об обоих типах журналов см. в разделе Просмотр журналов Gemini .
Включить ведение журнала для Gemini Code Assist
Выберите один из следующих вариантов:
Консоль
Убедитесь, что вы включили API облачного логирования в проекте.
Убедитесь, что у вас есть следующие разрешения на управление идентификацией и доступом в проекте, которому принадлежит подписка:
-
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» .
Перейти на Gemini для Google Cloud
Загрузится страница Gemini для Google Cloud .
Нажмите «Настройки» в левом навигационном меню.
Загрузится страница настроек .
(Необязательно) Щелкните Ведение журнала для метаданных Code Assist , чтобы записать метаданные, созданные пользователями Gemini Code Assist Standard и Enterprise в проекте.
(Необязательно) Щелкните Ведение журнала подсказок и ответов Code Assist, чтобы регистрировать подсказки и ответы, созданные пользователями Gemini Code Assist Standard и Enterprise в проекте.
Нажмите Сохранить изменения .
API
Чтобы включить ведение журнала для Gemini Code Assist Standard и Enterprise, используйте ресурс loggingSettings
для определения нужных параметров ведения журнала и используйте ресурс loggingSettings.settingBindings
для привязки настроек к проекту:
Убедитесь, что вы включили API облачного логирования в проекте.
Убедитесь, что у вас есть следующие разрешения на управление идентификацией и доступом в проекте, которому принадлежит подписка:
-
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
: введите идентификатор проекта, в котором хранится ресурс привязки. Это родительский проект привязки. -
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
: используйте тот же LOGS_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
Выберите один из следующих вариантов:
Консоль
Убедитесь, что у вас есть следующие разрешения на управление идентификацией и доступом в проекте, которому принадлежит подписка:
-
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» .
Перейти на Gemini для Google Cloud
Загрузится страница Gemini для Google Cloud .
Нажмите «Настройки» в левом навигационном меню.
Загрузится страница настроек .
Щелкните Ведение журнала метаданных Code Assist , чтобы отключить запись метаданных об использовании Gemini Code Assist Standard и Enterprise в проекте.
Нажмите Сохранить изменения .
API
Чтобы отключить ведение журнала для Gemini Code Assist Standard и Enterprise, используйте метод loggingSetting
.
Убедитесь, что у вас есть следующие разрешения на управление идентификацией и доступом в проекте, которому принадлежит подписка:
-
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
: введите идентификатор родительского проекта. LOGS_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 }
-