Générer des métriques Gemini Code Assist avec la journalisation

Ce document explique comment générer des métriques Gemini Code Assist. Par exemple, vous pouvez générer des métriques qui indiquent l'utilisation active quotidienne ou l'acceptation des recommandations de code pour divers produits Google Cloud, y compris Cloud Logging, Google Cloud CLI, Cloud Monitoring et BigQuery.

Avant de commencer

Indiquer le nombre d'utilisateurs uniques

Les instructions suivantes décrivent comment utiliser gcloud CLI pour lister le nombre d'utilisateurs uniques de Gemini Code Assist au cours des 28 derniers jours:

  1. Dans un environnement shell, assurez-vous d'avoir mis à jour tous les composants installés de la gcloud CLI vers la dernière version:

    gcloud components update
    
  2. Lisez les entrées de journal pour les utilisateurs et l'utilisation de Gemini Code Assist:

    gcloud logging read 'resource.type=cloudaicompanion.googleapis.com/Instance labels.product=~"code_assist"' \
    --freshness 28d \
    --project PROJECT_ID \
    --format "csv(timestamp.date('%Y-%m-%d'),labels.user_id)"
    

    Remplacez PROJECT_ID par l'ID de votre projet Google Cloud.

    Vous pouvez utiliser la commande Unix uniq pour identifier de manière unique les utilisateurs par jour.

    Le résultat ressemble à ce qui suit :

    2024-10-30,user1@company.com
    2024-10-29,user2@company.com
    2024-10-29,user2@company.com
    2024-10-29,user2@company.com
    2024-10-29,user1@company.com
    2024-10-28,user1@company.com
    

Créer un graphique représentant l'utilisation quotidienne

Les étapes suivantes montrent comment utiliser la surveillance pour créer des graphiques d'utilisation quotidienne qui affichent le total cumulé des utilisateurs actifs quotidiens de Gemini Code Assist et le nombre de leurs requêtes par jour.

  1. Créez une métrique de surveillance à partir de vos données de journal qui enregistre le nombre d'utilisateurs de Gemini Code Assist:

    1. Dans la console Google Cloud, accédez à la page Explorateur de journaux.

      Accéder à l'explorateur de journaux

      Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.

    2. Dans le volet de requête, saisissez la requête suivante, puis cliquez sur Run query (Exécuter la requête) :

       resource.type="cloudaicompanion.googleapis.com/Instance" AND labels.product="code_assist" AND jsonPayload.@type="type.googleapis.com/google.cloud.cloudaicompanion.logging.v1.ResponseLog"
      
    3. Dans la barre d'outils, cliquez sur Actions, puis sélectionnez Créer une métrique.

      La boîte de dialogue Créer une métrique basée sur les journaux s'affiche.

    4. Configurez les détails de la métrique suivants:

      • Assurez-vous que le Type de métrique est défini sur Compteur.
      • Nommez la métrique code_assist_example.
      • Assurez-vous que Sélection de filtre est défini sur l'emplacement où vos journaux sont stockés, soit Project (Projet) ou Bucket (Bucket).

        Pour en savoir plus sur la génération de métriques de surveillance à partir de vos données de journalisation, consultez la présentation des métriques basées sur les journaux.

    5. Cliquez sur Créer une métrique.

      Une bannière de réussite s'affiche, expliquant que la métrique a été créée.

    6. Dans cette bannière de réussite, cliquez sur Afficher dans l'explorateur de métriques.

      L'explorateur de métriques s'ouvre et affiche un graphique préconfiguré.

  2. Enregistrez le graphique dans un tableau de bord:

    1. Dans la barre d'outils, cliquez sur Enregistrer le graphique.
    2. Facultatif: modifiez le titre du graphique.
    3. Utilisez le menu Tableau de bord pour sélectionner un tableau de bord personnalisé existant ou en créer un.
    4. Cliquez sur Enregistrer le graphique.

Analyser l'utilisation à l'aide de BigQuery

Les étapes suivantes montrent comment utiliser BigQuery pour analyser vos données de journal.

Vous pouvez utiliser deux approches pour analyser vos données de journaux dans BigQuery:

  • Créez un récepteur de journaux et exportez vos données de journal vers un ensemble de données BigQuery.
  • Mettez à niveau le bucket de journaux qui stocke vos données de journaux pour utiliser Log Analytics, puis créez un ensemble de données BigQuery associé.

Avec les deux approches, vous pouvez utiliser SQL pour interroger et analyser vos données de journal, et vous pouvez représenter graphiquement les résultats de ces requêtes. Si vous utilisez Log Analytics, vous pouvez enregistrer vos graphiques dans un tableau de bord personnalisé. Toutefois, il existe des différences de prix. Pour en savoir plus, consultez les pages Tarifs de Log Analytics et Tarifs de BigQuery.

Cette section explique comment créer un récepteur de journaux pour exporter certaines entrées de journaux vers BigQuery, et fournit une liste d'exemples de requêtes. Pour en savoir plus sur Log Analytics, consultez Interroger et analyser les journaux avec Log Analytics et Interroger un ensemble de données BigQuery associé.

Créer un récepteur de journaux

  1. Dans la console Google Cloud, accédez à la page Routeur de journaux :

    Accéder au routeur de journaux

    Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.

  2. Sélectionnez le projet Google Cloud à partir duquel proviennent les entrées de journal que vous souhaitez acheminer.
  3. Cliquez sur Créer un récepteur.
  4. Dans le panneau Détails du récepteur, saisissez les informations suivantes :

    • Dans le champ Nom du récepteur, indiquez un identifiant pour le récepteur. Une fois que vous avez créé le récepteur, vous ne pouvez pas le renommer, mais vous pouvez le supprimer et en créer un autre.

    • Pour Description du récepteur, décrivez l'objectif ou le cas d'utilisation du récepteur.

  5. Dans le panneau Destination du récepteur, configurez les informations suivantes:

    • Dans le menu déroulant Sélectionner le service de récepteur, cliquez sur Ensemble de données BigQuery.
    • Pour Sélectionnez un ensemble de données BigQuery, créez un ensemble de données BigQuery et nommez-le code_assist_bq.
  6. Ouvrez le panneau Sélectionner les journaux à inclure dans le récepteur, puis saisissez ce qui suit dans le champ Créer un filtre d'inclusion:

    resource.type="cloudaicompanion.googleapis.com/Instance" AND labels.product="code_assist"
    
  7. Facultatif: Pour vérifier que le filtre saisi est correct, sélectionnez Prévisualiser les journaux. L'explorateur de journaux s'ouvre dans un nouvel onglet avec le filtre prérempli.

  8. Cliquez sur Créer un récepteur.

Autoriser le récepteur de journaux à écrire des entrées de journal dans l'ensemble de données

Lorsque vous disposez d'un accès propriétaire à l'ensemble de données BigQuery, Cloud Logging accorde au récepteur de journaux les autorisations nécessaires pour écrire des données de journal.

Si vous ne disposez pas de l'accès propriétaire ou si aucune entrée ne s'affiche dans votre ensemble de données, il est possible que le récepteur de journaux ne dispose pas des autorisations requises. Pour résoudre ce problème, suivez les instructions de la section Définir les autorisations de destination.

Requêtes

Vous pouvez utiliser les exemples de requêtes BigQuery suivants pour générer des données au niveau de l'utilisateur et de l'agrégation pour l'utilisation active quotidienne et les suggestions générées.

Avant d'utiliser les exemples de requêtes suivants, vous devez obtenir le chemin d'accès complet du nouveau récepteur créé. Pour obtenir le chemin d'accès, procédez comme suit:

  1. Dans la console Google Cloud, accédez à la page BigQuery.

    Accéder à BigQuery

  2. Dans la liste des ressources, recherchez l'ensemble de données nommé code_assist_bq. Ces données correspondent à la destination du récepteur.

  3. Sélectionnez le tableau des réponses sous code_assist_bq_dataset, cliquez sur l'icône , puis sur Copier l'ID pour générer l'ID de l'ensemble de données. Notez-la pour pouvoir l'utiliser dans les sections suivantes en tant que variable GENERATED_BIGQUERY_TABLE.

Lister les utilisateurs individuels par jour

SELECT DISTINCT labels.user_id as user, DATE(timestamp) as use_date
FROM GENERATED_BIGQUERY_TABLE
ORDER BY use_date

Remplacez GENERATED_BIGQUERY_TABLE par le chemin d'accès complet de la table de réponse BigQuery que vous avez noté dans les étapes précédentes pour créer un sink.

Lister les utilisateurs agrégés par jour

SELECT COUNT(DISTINCT labels.user_id) as total_users, DATE(timestamp) as use_date
FROM GENERATED_BIGQUERY_TABLE
GROUP BY use_date
ORDER BY use_date

Lister les requêtes individuelles par jour et par utilisateur

SELECT COUNT(*), DATE(timestamp) as use_date, labels.user_id as user
FROM GENERATED_BIGQUERY_TABLE
GROUP BY use_date, user
ORDER BY use_date

Lister les requêtes agrégées par jour par date

SELECT COUNT(*), DATE(timestamp) as use_date
FROM GENERATED_BIGQUERY_TABLE
GROUP BY use_date
ORDER BY use_date

Étape suivante