Premiers pas avec la surveillance Genkit

Ce guide de démarrage rapide explique comment configurer la surveillance Firebase Genkit pour vos fonctionnalités Genkit déployées afin de pouvoir collecter et afficher des données de télémétrie en temps réel. La surveillance Firebase Genkit vous permet de voir les performances de vos fonctionnalités Genkit en production.

Voici les principales fonctionnalités de Firebase Genkit Monitoring:

  • Affichage de métriques quantitatives telles que la latence, les erreurs et l'utilisation des jetons des fonctionnalités Genkit.
  • Inspecter les traces pour voir les étapes, les entrées et les sorties de la fonctionnalité de votre Genkit afin de faciliter le débogage et l'amélioration de la qualité.
  • Exporter des traces de production pour exécuter des évaluations dans Genkit.

Pour configurer la surveillance Genkit, vous devez effectuer des tâches à la fois dans votre codebase et dans la console Google Cloud.

Avant de commencer

  1. Si ce n'est pas déjà fait, créez un projet Firebase.

    Dans la console Firebase, cliquez sur Ajouter un projet, puis suivez les instructions à l'écran. Vous pouvez créer un projet ou ajouter des services Firebase à un projet Google Cloud existant.

  2. Assurez-vous que votre projet est associé au forfait Blaze.

    Genkit Monitoring s'appuie sur des données de télémétrie écrites dans Google Cloud Logging, Metrics et Trace, qui sont des services payants. Consultez la page Tarifs de Google Cloud Observability pour en savoir plus sur les tarifs et les limites de la version sans frais.

  3. Écrivez une fonctionnalité Genkit en suivant le guide de démarrage, puis préparez votre code pour le déploiement à l'aide de l'un des guides suivants:

    1. Déployer des flux à l'aide de Cloud Functions for Firebase
    2. Déployer des flux à l'aide de Cloud Run
    3. Déployer des flux sur n'importe quelle plate-forme Node.js

Étape 1 : Ajouter le plug-in Firebase

Installez le plug-in @genkit-ai/firebase dans votre projet:

npm i save @genkit-ai/firebase

Importez enableFirebaseTelemetry dans votre fichier de configuration Genkit (fichier dans lequel genkit(...) est initialisé) et appelez-le:

import { enableFirebaseTelemetry } from '@genkit-ai/firebase';

enableFirebaseTelemetry();

Étape 2 : Activer les API requises

Assurez-vous que les API suivantes sont activées pour votre projet GCP:

Ces API doivent figurer dans le tableau de bord des API de votre projet.

Étape 3 : Configurer les autorisations

Le plug-in Firebase doit utiliser un compte de service pour s'authentifier auprès des services Google Cloud Logging, Metrics et Trace.

Attribuez les rôles suivants au compte de service configuré pour exécuter votre code dans la console Google Cloud IAM. Pour Cloud Functions pour Firebase et/ou Cloud Run, il s'agit généralement du compte de service Compute par défaut.

  • Rédacteur de métriques Monitoring (roles/monitoring.metricWriter)
  • Agent Cloud Trace (roles/cloudtrace.agent)
  • Rédacteur de journaux (roles/logging.logWriter)

Étape 4. (Facultatif) Tester votre configuration en local

Avant le déploiement, vous pouvez exécuter votre code Genkit localement pour vérifier que les données de télémétrie sont collectées et visibles dans le tableau de bord de surveillance Genkit.

  1. Dans votre code Genkit, définissez forceDevExport sur true pour envoyer des données de télémétrie depuis votre environnement local.

  2. Utilisez votre compte de service pour vous authentifier et tester votre configuration.

    Avec l'outil Google Cloud CLI, authentifiez-vous à l'aide du compte de service:

    gcloud auth application-default login --impersonate-service-account <SERVICE_ACCT_EMAIL>
    
  3. Exécutez et appelez votre fonctionnalité Genkit, puis affichez les métriques dans le tableau de bord de surveillance Genkit. Attendez jusqu'à cinq minutes pour que la première métrique soit collectée. Vous pouvez réduire ce délai en définissant metricExportIntervalMillis dans la configuration de la télémétrie.

  4. Si les métriques ne s'affichent pas dans le tableau de bord de surveillance Genkit, consultez le guide de dépannage pour savoir comment déboguer.

Étape 5 : Recompiler et déployer le code

Recompilez, déployez et appelez votre fonctionnalité Genkit pour commencer à collecter des données. Une fois que Genkit Monitoring a reçu vos métriques, vous pouvez les consulter en accédant au tableau de bord Genkit Monitoring.