Générateur de configuration des métriques

Le générateur de configuration de métriques (MCG, Metrics Configuration Generator) est un service qui simplifie la création de configurations de télémétrie SDV. MCG convertit les configurations JSON lisibles par l'humain au format de fichier binaire MetricsConfiguration du tampon de protocole (protobuf) requis par les campagnes de télémétrie embarquées.

MCG est un service Web avec lequel vous interagissez à l'aide de requêtes HTTP standards. Cette approche basée sur l'API vous permet d'utiliser des outils de ligne de commande tels que curl pour la génération et le débogage manuels, ou d'intégrer MCG en tant que backend pour des outils plus sophistiqués, tels qu'une interface graphique pour créer des configurations.

Fonctionnalités

Le service de télémétrie du véhicule nécessite un message protobuf binaire MetricsConfiguration. Bien que ce message puisse être représenté au format textproto pour le débogage, la création directe de ce format nécessite une connaissance détaillée de sa structure de bas niveau et peut être fastidieuse et sujette aux erreurs. MCG simplifie ce processus en transférant la création de configuration vers un format JSON convivial.

MCG inclut les fonctionnalités suivantes :

  • Configuration basée sur JSON : les configurations de métriques, y compris les sources de données, la logique de traitement et les règles de création de rapports, peuvent être définies au format JSON lisible par l'humain, que MCG compile au format protobuf binaire requis.
  • Validation intégrée : le processus de génération valide automatiquement les configurations par rapport aux définitions de signaux et aux règles de schéma pour détecter les erreurs avant le déploiement.
  • Génération automatique de types de messages : les agrégateurs et les rapports produisent des résultats qui doivent être définis à l'aide de descripteurs de messages protobuf dans la configuration binaire finale. MCG déduit la structure de ces résultats en fonction des types de signaux d'entrée et de la logique d'agrégation, et génère automatiquement les descripteurs de messages requis. Vous n'avez donc plus besoin de définir manuellement des schémas pour les structures de données intermédiaires ou spécifiques aux rapports.
  • Création d'expressions plus facile : une grammaire personnalisée lisible par l'humain pour définir des expressions évite de construire manuellement des arborescences d'expressions.

Workflow

L'utilisation de MCG pour générer des configurations de métriques implique deux phases principales : un import unique de chaque catalogue de signaux de véhicule version que vous comptez utiliser, suivi de l'écriture et de la génération de configurations de métriques individuelles.

  1. Importer des définitions de signaux : cette étape ne doit être effectuée qu'une seule fois par version du catalogue de signaux de véhicule. Pour activer la validation et l'inférence de type, MCG doit avoir accès aux définitions de signaux de véhicule que vous comptez référencer dans vos configurations. Ces définitions doivent déjà exister sous forme de fichiers protobuf dans votre projet dans le cadre du catalogue VSIDL (ou vous pouvez utiliser des exemples de définitions pour expérimenter). Pour les rendre disponibles dans MCG, regroupez-les dans un catalogue de signaux de véhicule et importez-le à l'aide de l'API :

  2. Écrire une configuration : une fois qu'une version de catalogue est importée dans MCG, vous pouvez écrire n'importe quel nombre de configurations de métriques qui la référencent. Dans la configuration JSON, vous définissez les sources de données à utiliser, comment effectuer des calculs ou des agrégations sur ces données, et les déclencheurs qui déterminent quand les résultats sont générés.

  3. Générer : envoyez votre configuration JSON à l'API MCG. L'API valide la configuration et la compile au format MetricsConfiguration. Vous pouvez demander ce format en tant que protobuf binaire (application/x-protobuf) pour une utilisation embarquée ou en tant que textproto (text/x-protobuf) pour examen ou débogage.

Pour obtenir des informations complètes sur tous les points de terminaison, les formats de requête et de réponse, ainsi que des exemples d'utilisation, consultez la documentation de référence de l'API MCG.

Déploiement

En tant que service cloud natif, MCG est conçu pour être déployé dans un environnement cloud (tel que Google Cloud Run), fournissant un point central pour la génération et la validation de configurations dans vos équipes. Pour obtenir des instructions de déploiement, consultez Déployer sur Google Cloud.

Pour le développement et les tests locaux, MCG peut également être exécuté en tant que service autonome sur une machine de développeur. Pour obtenir des instructions de configuration, consultez Exécuter en local.