Ce document explique comment configurer la journalisation Gemini Code Assist Standard et Enterprise pour un projet à l'aide de la console des API Google ou d'une API.
Limites
L'enregistrement des données de journal Gemini Standard et Enterprise dans Google Cloud est limité aux interactions des utilisateurs avec Gemini Code Assist dans l'IDE.
De plus, Gemini pour Google Cloud ne consigne pas les données pour Gemini Code Assist Standard et Enterprise si la télémétrie VS Code est désactivée par l'utilisateur.
Avant de commencer
Assurez-vous que votre projet Google Cloud est associé à un compte de facturation.
(Facultatif) Accorder des autorisations IAM
Pour configurer la journalisation Gemini Code Assist Standard et Enterprise, vous devez disposer d'autorisations Identity and Access Management spécifiques, qui sont détaillées dans les sections suivantes. Assurez-vous que ces autorisations sont ajoutées aux rôles IAM personnalisés.
Vous pouvez également accorder le rôle IAM prédéfini Gemini pour Google Cloud : administrateur des paramètres (roles/cloudaicompanion.settingsAdmin
), qui inclut toutes les autorisations requises pour utiliser tous les paramètres d'administrateur Gemini pour Google Cloud.
(Facultatif) Lier des autorisations à des paramètres et des cibles
Si vous configurez les paramètres d'administrateur Gemini Code Assist Standard et Enterprise dans la console des API Google, vous pouvez ignorer cette section.
Pour configurer les paramètres d'administrateur Gemini Code Assist Standard et Enterprise avec l'API Gemini pour Google Cloud, vous devez d'abord créer des paramètres, puis des liaisons pour "lier" ces paramètres et cibles (telles que l'instance, le sujet ou les projets) à des produits spécifiques (tels que Gemini Cloud Assist ou Gemini Code Assist).
Toutes les autorisations de création et de modification des paramètres sont au niveau du projet.
Configurer la journalisation de Gemini Code Assist
Les sections suivantes décrivent les étapes à suivre pour activer la collecte et le stockage de l'activité Gemini Code Assist Standard et Enterprise dans Cloud Logging, y compris:
Requêtes et journaux de réponse de Gemini Code Assist Standard et Enterprise, tels que les entrées utilisateur, les informations contextuelles et les réponses.
Journaux de métadonnées Gemini Code Assist Standard et Enterprise, tels que les métadonnées de télémétrie et les lignes de code acceptées par l'utilisateur.
Pour en savoir plus sur les deux types de journaux, consultez la section Afficher les journaux Gemini.
Activer la journalisation pour Gemini Code Assist
Sélectionnez l'une des options suivantes :
Console
Assurez-vous d'avoir activé l'API Cloud Logging dans le projet.
Assurez-vous de disposer des autorisations Identity and Access Management suivantes sur le projet propriétaire de l'abonnement:
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
Dans la console API, accédez à la page Administration pour Gemini.
Accéder à Gemini pour Google Cloud
La page Gemini pour Google Cloud s'affiche.
Cliquez sur Paramètres dans le menu de navigation de gauche.
La page Paramètres se charge.
(Facultatif) Cliquez sur Journalisation des métadonnées Code Assist pour enregistrer les métadonnées générées par les utilisateurs de Gemini Code Assist Standard et Enterprise dans le projet.
(Facultatif) Cliquez sur Journalisation des requêtes et réponses de Code Assist pour enregistrer les requêtes et réponses générées par les utilisateurs de Gemini Code Assist Standard et Enterprise dans le projet.
Cliquez sur Enregistrer les modifications.
API
Pour activer la journalisation pour Gemini Code Assist Standard et Enterprise, utilisez la méthode loggingSetting
.
Assurez-vous d'avoir activé l'API Cloud Logging dans le projet.
Assurez-vous de disposer des autorisations Identity and Access Management suivantes sur le projet propriétaire de l'abonnement:
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
Créez le paramètre et une valeur spécifique à ce paramètre:
Obtenez le jeton:
TOKEN=$(gcloud auth print-access-token)
Activez les journaux de métadonnées Gemini Code Assist Standard et Enterprise.
Exécutez la commande suivante pour créer le paramètre:
curl -X POST \ -H "Authorization: Bearer $TOKEN" \ -H 'Content-Type: application/json' \ -d '{ "log_metadata": true, } ' \ "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings?logging_setting_id=SETTING_ID"
Remplacez les éléments suivants :
CONTAINER_PROJECT_NAME
: saisissez l'ID du projet parent.SETTING_ID
: saisissez un nom de paramètre unique, par exemplegcalm1
pourGemini Code Assist log metadata
.
Si la commande aboutit, elle renvoie un corps de réponse qui indique que
log_metadata
est défini surtrue
:{ "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/SETTING_ID", "createTime": "2025-01-23T15:22:49.717166932Z", "updateTime": "2025-01-23T15:22:49.717166932Z", "log_metadata": true }
Exécutez la commande suivante pour créer la liaison de paramètres des journaux de métadonnées Gemini Code Assist Standard et 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/SETTING_ID/settingBindings?setting_binding_id=BINDING_ID"
Remplacez les éléments suivants :
TARGET_PROJECT_NAME
: saisissez le projet cible auquel le paramètre doit être appliqué.SETTING_ID
: utilisez le même SETTING_ID que lorsque vous avez créé le paramètre, mais ajoutez-yb1
. Par exemple, utilisezgcalmb1
pourGemini Code Assist log metadata
.
Si la commande réussit, elle renvoie les métadonnées de l'opération au format suivant:
{ "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>SETTING_ID</var>/settingBindings/<var>BINDING_ID</var>", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Activez les journaux utilisateur de Gemini Code Assist Standard et Enterprise.
Exécutez la commande suivante pour créer le paramètre:
curl -X POST \ -H "Authorization: Bearer $TOKEN" \ -H 'Content-Type: application/json' \ -d '{ "log_prompts_and_responses": true, } ' \ "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings?logging_setting_id=SETTING_ID"
Remplacez les éléments suivants :
CONTAINER_PROJECT_NAME
: saisissez l'ID du projet parent.SETTING_ID
: saisissez un nom de paramètre unique, par exemplegcapar1
pourGemini Code Assist prompts and responses
.
Si la commande aboutit, elle renvoie un corps de réponse qui indique que
log_prompts_and_responses
est défini surtrue
:{ "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/SETTING_ID", "createTime": "2025-01-23T15:22:49.717166932Z", "updateTime": "2025-01-23T15:22:49.717166932Z", "log_prompts_and_responses": true }
Exécutez la commande suivante pour créer la liaison de paramètres des journaux utilisateur Gemini Code Assist Standard et Enterprise:
curl \ -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/SETTING_ID/settingBindings?setting_binding_id=BINDING_ID"
Remplacez les éléments suivants :
TARGET_PROJECT_NAME
: saisissez le projet cible auquel le paramètre doit être appliqué.SETTING_ID
: utilisez le même SETTING_ID que lorsque vous avez créé le paramètre, mais ajoutez-yb1
. Par exemple, utilisezgcaparb1
pourGemini Code Assist prompts and responses
.
Si la commande réussit, elle renvoie les métadonnées de l'opération au format suivant:
{ "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>SETTING_ID</var>/settingBindings/<var>BINDING_ID</var>", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Désactiver la journalisation pour Gemini Code Assist
Sélectionnez l'une des options suivantes :
Console
Assurez-vous de disposer des autorisations Identity and Access Management suivantes sur le projet propriétaire de l'abonnement:
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
Dans la console API, accédez à la page Administration pour Gemini.
Accéder à Gemini pour Google Cloud
La page Gemini pour Google Cloud s'affiche.
Cliquez sur Paramètres dans le menu de navigation de gauche.
La page Paramètres se charge.
Cliquez sur Journalisation des métadonnées Code Assist pour désactiver l'enregistrement des métadonnées liées à l'utilisation de Gemini Code Assist Standard et Enterprise dans le projet.
Cliquez sur Enregistrer les modifications.
API
Pour activer la journalisation pour Gemini Code Assist Standard et Enterprise, utilisez la méthode loggingSetting
.
Assurez-vous de disposer des autorisations Identity and Access Management suivantes sur le projet propriétaire de l'abonnement:
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
Créez le paramètre et une valeur spécifique à ce paramètre:
Obtenez le jeton:
TOKEN=$(gcloud auth print-access-token)
Exécutez la commande suivante pour désactiver le paramètre des journaux de métadonnées Gemini Code Assist Standard et Enterprise:
curl -X POST \ -H "Authorization: Bearer $TOKEN" \ -H 'Content-Type: application/json' \ -d '{ "log_metadata": false, } ' \ "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings?logging_metadata_id=SETTING_ID"
Remplacez les éléments suivants :
CONTAINER_PROJECT_NAME
: saisissez l'ID du projet parent.SETTING_ID
: saisissez le nom du paramètre existant, par exemplegcalm1
pourGemini Code Assist log metadata
.Si la commande aboutit, elle renvoie un corps de réponse qui indique que
log_metadata
est défini surfalse
:{ "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/SETTING_ID", "createTime": "2025-01-23T15:22:49.717166932Z", "updateTime": "2025-01-23T15:22:49.717166932Z", "log_metadata": false }
Exécutez la commande suivante pour désactiver le paramètre des journaux utilisateur Gemini Code Assist Standard et Enterprise:
curl -X POST \ -H "Authorization: Bearer $TOKEN" \ -H 'Content-Type: application/json' \ -d '{ "log_prompts_and_responses": false, } ' \ "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings?logging_setting_id=SETTING_ID"
Remplacez les éléments suivants :
CONTAINER_PROJECT_NAME
: saisissez l'ID du projet parent.SETTING_ID
: saisissez le nom du paramètre existant, par exemplegcapar1
pourGemini Code Assist prompts and responses
.Si la commande aboutit, elle renvoie un corps de réponse qui indique que
log_prompts_and_responses
est défini surfalse
:{ "name": "projects/CONTAINER_PROJECT_NAME/locations/global/loggingSettings/SETTING_ID", "createTime": "2025-01-23T15:22:49.717166932Z", "updateTime": "2025-01-23T15:22:49.717166932Z", "log_prompts_and_responses": false }