Configurar geração de registro do Gemini Code Assist Standard e Enterprise

Este documento descreve como configurar o registro em log do Gemini Code Assist Standard e Enterprise para um projeto usando o console do Google Cloud ou uma API.

Limitações

O Gemini Standard e o Gemini Enterprise no registro de dados de registro do Google Cloud são limitados às interações do usuário com o Gemini Code Assist no ambiente de desenvolvimento integrado.

Além disso, o Gemini para Google Cloud não registra dados do Gemini Code Assist Standard e Enterprise se a telemetria do VS Code estiver desativada pelo usuário.

Antes de começar

Verifique se o projeto do Google Cloud está vinculado a uma conta de faturamento.

Verificar permissões do IAM

Para configurar a geração de registros do Gemini Code Assist Standard e Enterprise, conceda o papel predefinido do Identity and Access Management (IAM) Administrador das configurações do Gemini para Google Cloud (roles/cloudaicompanion.settingsAdmin), que inclui todas as permissões necessárias para trabalhar com as configurações de administrador do Gemini para Google Cloud.

Como alternativa, é possível atualizar qualquer papel personalizado do IAM. Você precisa ter permissões específicas do IAM, que são detalhadas nas seções a seguir.

Configurar a geração de registros do Gemini Code Assist

As seções a seguir fornecem as etapas necessárias para ativar a coleta e o armazenamento da atividade do Gemini Code Assist Standard e Enterprise no Cloud Logging, incluindo:

  • Registros de comandos e respostas do Gemini Code Assist Standard e Enterprise, como entradas do usuário, informações contextuais e respostas.

  • Registros de metadados do Gemini Code Assist Standard e Enterprise, como metadados de telemetria e linhas de código aceitas pelo usuário.

Para mais detalhes sobre os dois tipos de registros, consulte Ver registros do Gemini.

Ativar a geração de registros do Gemini Code Assist

Selecione uma das seguintes opções:

Console

  1. Verifique se você ativou a API Cloud Logging no projeto.

  2. Verifique se você tem as seguintes permissões do IAM no projeto proprietário da assinatura:

    • 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
  3. No console do Google Cloud, acesse a página Admin do Gemini.

    Acessar o Gemini para Google Cloud

    A página Gemini para Google Cloud é carregada.

  4. Clique em Configurações no menu de navegação à esquerda.

    A página Configurações é carregada.

  5. (Opcional) Clique em Registro em log de metadados do Code Assist para registrar os metadados gerados pelos usuários do Gemini Code Assist Standard e Enterprise no projeto.

  6. (Opcional) Clique em Registros de comandos e respostas do Code Assist para registrar os comandos e as respostas gerados pelos usuários do Gemini Code Assist Standard e Enterprise no projeto.

  7. Clique em Salvar alterações.

API

Para ativar a geração de registros do Gemini Code Assist Standard e Enterprise, use o recurso loggingSettings para definir as configurações de geração de registros desejadas e o recurso loggingSettings.settingBindings para vincular as configurações a um projeto:

  1. Verifique se você ativou a API Cloud Logging no projeto.

  2. Verifique se você tem as seguintes permissões do IAM no projeto proprietário da assinatura:

    • 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
  3. Crie a configuração e um valor específico dela:

    1. Receba o token:

      TOKEN=$(gcloud auth print-access-token) 
  4. Ative os registros do Gemini Code Assist Standard e Enterprise. Os registros de usuários e de metadados são ativados com os campos log_prompts_and_responses e log_metadata, respectivamente. Se você não quiser ativar um dos campos, exclua-o da solicitação.

    1. Execute o comando a seguir para criar a configuração:

      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" 

      Substitua:

      • CONTAINER_PROJECT_NAME: insira o ID do projeto em que o recurso de vinculação está armazenado. Esse é o projeto principal da vinculação.
      • LOGS_SETTING_ID: insira um nome exclusivo para a configuração, como gcalm.

      Se o comando for bem-sucedido, ele vai retornar um corpo de resposta que mostra log_prompts_and_responses e log_metadata definidos como 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 } 
    2. Execute o comando a seguir para criar a vinculação de configuração dos registros do Gemini Code Assist Standard e 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" 

    Substitua:

    • TARGET_PROJECT_NAME: insira o projeto de destino a que a vinculação deve ser associada. Geralmente, é o mesmo que o projeto do contêiner. No entanto, é possível vincular uma configuração a vários projetos para que o recurso de configuração não precise ser duplicado.
    • LOGS_BINDING_ID: use o mesmo LOGS_SETTING_ID de quando você criou a configuração, mas adicione b1. Por exemplo, use gcalmb1.

    Se o comando for bem-sucedido, ele vai retornar os metadados da operação no seguinte formato:

    {   "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 } 

Desativar a geração de registros do Gemini Code Assist

Selecione uma das seguintes opções:

Console

  1. Verifique se você tem as seguintes permissões do IAM no projeto proprietário da assinatura:

    • 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
  2. No console do Google Cloud, acesse a página Admin do Gemini.

    Acessar o Gemini para Google Cloud

    A página Gemini para Google Cloud é carregada.

  3. Clique em Configurações no menu de navegação à esquerda.

    A página Configurações é carregada.

  4. Clique em Registros de metadados do Code Assist para desativar a gravação dos metadados do uso do Gemini Code Assist Standard e Enterprise no projeto.

  5. Clique em Salvar alterações.

API

Para desativar a geração de registros do Gemini Code Assist Standard e Enterprise, use o método loggingSetting.

  1. Verifique se você tem as seguintes permissões do IAM no projeto proprietário da assinatura:

    • 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
  2. Crie a configuração e um valor específico dela:

    1. Receba o token:

      TOKEN=$(gcloud auth print-access-token) 
  3. Execute o comando a seguir para desativar as configurações de registros do Gemini Code Assist Standard e 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" 

    Substitua:

    • CONTAINER_PROJECT_NAME: insira o ID do projeto principal.
    • LOGS_SETTING_ID: insira o nome da configuração atual, como gcalm.

      Se o comando for bem-sucedido, ele vai retornar um corpo de resposta que mostra log_prompts_and_responses e log_metadata definidos como 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 } 

A seguir