Premiers pas avec Apigee Integration et le déclencheur Cloud Pub/Sub

Découvrez comment créer un exemple d'intégration à l'aide d'Apigee Integration et du déclencheur Cloud Pub/Sub. Les étapes suivantes décrivent comment configurer le déclencheur, les tâches, les variables et les mappages de données requis pour exécuter une intégration complète.

Présentation

Dans ce guide de démarrage rapide, vous allez créer une intégration avec un déclencheur Cloud Pub/Sub pour écouter un sujet Pub/Sub existant qui reçoit des relevés de température en degrés Kelvin à partir d'un appareil IoT. Vous pouvez ensuite utiliser la tâche Mappage de données pour convertir le message Pub/Sub en degrés Celsius et envoyer la valeur par e-mail.

Avant de commencer

Assurez-vous d'effectuer les tâches suivantes avant de commencer le guide de démarrage rapide :

    • Attribuez les rôles IAM suivants à l'agent de service Apigee Integration (service-PROJECT_NUMBER@gcp-sa-apigee.iam.gserviceaccount.com) dans votre projet Google Cloud.
      • Éditeur Pub/Sub
      • Demandeur d'intégrations Apigee

        Pour en savoir plus sur l'attribution de rôles IAM, consultez la page Rôles et autorisations IAM.

    Configurer l'environnement

    Créez un sujet Cloud Pub/Sub.

    Ce guide de démarrage rapide suppose que vous avez un sujet Pub/Sub qui reçoit des relevés de température en degrés Kelvin à partir d'un appareil IoT. Il n'est pas nécessaire que le sujet soit véritablement connecté à un appareil. Ce guide de démarrage rapide teste la capacité de l'intégration à écouter le sujet et à effectuer des tâches lorsqu'elle est déclenchée.

    Pour créer un exemple de sujet aux fins de ce guide de démarrage rapide, procédez comme suit :

    1. Accédez à la page "Sujets Pub/Sub" dans Cloud Console.

      Accéder à la page "Sujets Pub/Sub"

    2. Cliquez sur Create a topic (Créer un sujet).
    3. Dans le champ ID du sujet, indiquez un nom de sujet unique. Par exemple, temperaturesensor.
    4. Cliquez sur Enregistrer.

    Créer une intégration

    Pour créer une intégration, procédez comme suit :

    1. Dans l'interface utilisateur Apigee, sélectionnez votre organisation Apigee.
    2. Cliquez sur Développer > Intégrations.
    3. Cliquez sur Créer une intégration.
    4. Saisissez un nom et une description dans la boîte de dialogue Créer une intégration. Exemple : my-test-integration.
    5. Sélectionnez une région pour l'intégration.
    6. Cliquez sur Créer pour ouvrir l'éditeur d'intégrations.

    Ajouter un déclencheur Cloud Pub/Sub

    Pour ajouter un déclencheur Cloud Pub/Sub à l'intégration, procédez comme suit :
    1. Dans l'éditeur d'intégrations, sélectionnez Déclencheurs pour afficher la liste des déclencheurs disponibles.
    2. Cliquez sur l'élément de déclencheur Cloud Pub/Sub et placez-le au niveau du concepteur.

    Configurer un déclencheur Cloud Pub/Sub

    Cliquez sur l'élément Déclencheur Cloud Pub/Sub dans l'éditeur d'intégrations pour afficher le volet de configuration du déclencheur.

    Spécifiez le sujet que le déclencheur doit écouter dans le champ Sujet Pub/Sub au format suivant, où :

    projects/PROJECT_ID/topics/TOPIC_ID
    où :
    • PROJECT_ID est le projet Google Cloud dans lequel votre sujet a été créé.
    • TOPIC_ID est l'ID du sujet Cloud Pub/Sub que vous avez créé à la section Avant de commencer.

    Par exemple, si votre projet s'appelle my-project et que vous avez nommé votre sujet temperaturesensor, saisissez :

    projects/my-project/topics/temperaturesensor

    Pour afficher tous les sujets disponibles dans votre projet Google Cloud, consultez la colonne Nom du sujet dans la section Sujets.

    Le volet de configuration Déclencheur Cloud Pub/Sub renseigne automatiquement le champ Sortie du déclencheur avec une variable permettant de conserver le message Pub/Sub.

    Ajouter et configurer la tâche de mappage des données

    Pour configurer la tâche de Mappage de données, procédez comme suit :

    1. Sélectionnez Tâches pour afficher la liste des tâches disponibles.
    2. Cliquez sur l'élément Mappage de données et placez-le dans l'éditeur d'intégrations.
    3. Cliquez sur la tâche Mappage des données dans le concepteur pour ouvrir le volet de configuration de la tâche.
    4. Cliquez sur Ouvrir l'éditeur de mappage de données.

      L'éditeur de mappage de données vous permet de mapper les variables d'entrée avec les variables de sortie souhaitées à l'aide des fonctions de transformation disponibles. Le résultat est ensuite disponible en tant que variable pour toute autre tâche ou tout autre déclencheur d'intégration. Pour en savoir plus sur la transmission de données en tant que variables, consultez la page Utiliser des variables dans Apigee Integration.

      Pour ce guide de démarrage rapide, procédez comme suit pour créer un mappage en utilisant CloudPubSubMessage comme entrée :

      1. Développez la variable JSON CloudPubSubMessage dans la liste Variables, puis faites glisser la variable CloudPubSubMessage.data vers la première ligne Entrée.
      2. Cliquez sur + (Ajouter une fonction) à côté de la variable CloudPubSubMessage.data pour afficher la liste déroulante des fonctions disponibles.
      3. Sélectionnez TO_DOUBLE() pour convertir la valeur CloudPubSubMessage.data en type de données double.
      4. Cliquez de nouveau sur + (Ajouter une fonction) pour sélectionner et enchaîner la fonction SUBTRACT.
      5. Saisissez 273.15 comme valeur de la fonction SUBTRACT. Cette valeur permet de convertir la température Kelvin en degrés Celsius.
      6. Cliquez sur la deuxième ligne de la colonne Résultat pour créer une variable de sortie contenant la valeur des données transformées. Remplissez les champs suivants :
        • Nom : saisissez TempInCelsius.
        • Cochez la case Utiliser comme sortie de l'intégration.
        • Cliquez sur Créer pour créer la variable et fermer le volet. La nouvelle variable TempInCelsith apparaît dans la liste Variables.
      7. Faites glisser la variable TempInCelsius de la liste Variables vers la deuxième ligne de la colonne Entrée.
      8. Cliquez sur + (Ajouter une fonction) dans la variable TempInCelsgni pour afficher la liste déroulante des fonctions disponibles.
      9. Cliquez sur TO_STRING() pour transformer le type de données de la variable de double en string.
      10. Cliquez sur la deuxième ligne de la colonne Résultat pour créer une variable contenant la valeur des données transformées. Remplissez les champs suivants :
        • Nom : saisissez TempInCelsiusString.
        • Valeur par défaut vide : sélectionnez Chaîne vide.
        • Cochez la case Utiliser en tant que sortie de l'intégration.
        • Cliquez sur Créer pour créer la variable et fermer le volet. La nouvelle variable s'affiche dans la liste Variables, sur la gauche de l'éditeur de mappage de données.
      11. Fermez l'éditeur de mappage de données une fois le mappage terminé. Toutes les modifications seront enregistrées automatiquement.

    Ajouter et configurer la tâche d'envoi d'e-mails

    Pour configurer la tâche Envoyer un e-mail :

    1. Sélectionnez Tâches dans l'éditeur d'intégrations pour afficher la liste des tâches disponibles.
    2. Cliquez sur l'élément Envoyer un e-mail et placez-le dans l'éditeur d'intégrations.
    3. Cliquez sur l'élément Envoyer un e-mail sur le concepteur pour ouvrir le volet de configuration de la tâche. Définissez les propriétés suivantes :
      • Destinataire(s) : saisissez votre adresse e-mail. Vous allez utiliser cette adresse e-mail pour confirmer la réussite de l'intégration.
      • Objet : saisissez Temperature in Celsius.
      • Corps en texte brut : sélectionnez la variable TempInCelsiusString créée précédemment dans la tâche Mappage de données.
      • Vous pouvez laisser les autres options dans la configuration par défaut.
      Les modifications que vous avez apportées aux propriétés sont enregistrées automatiquement.

    Ajouter les connexions périphériques requises

    Une arête est une connexion entre deux éléments d'une intégration. La connexion indique la direction du flux de contrôle d'un élément (tâche ou déclencheur) à un autre. Pour en savoir plus sur les périphéries, consultez la page Périphéries.

    1. Ajoutez une connexion de périphérie depuis l'élément Déclencheur Cloud Pub/Sub vers l'élément Mappage de données en pointant sur un point de contrôle du déclencheur Cloud Pub/Sub, puis en cliquant sur une ligne et en la faisant glisser vers un point de contrôle de l'élément de tâche Mappage de données. La périphérie indique le flux de contrôle de la tâche Déclencheur Cloud Pub/Sub vers la tâche Mappage de données.
    2. À partir de l'élément Mapper les données, ajoutez une connexion de périphérie à l'élément Envoyer un e-mail en passant la souris sur un point de contrôle sur l'élément Mapper les données puis en cliquant sur une ligne et en la faisant glisser vers un point de contrôle sur l'élément de tâche Envoyer un e-mail. Cette périphérie indique le flux de contrôle de la tâche Mappage de données vers la tâche Envoyer un e-mail.

    La connexion effectuée doit apparaître comme illustré dans la figure ci-dessous :

    Image montrant le flux de démarrage rapide Image montrant le flux de démarrage rapide

    Tester l'intégration

    Procédez comme suit pour tester la nouvelle intégration à partir de la page des sujets Pub/Sub :

    1. Accédez à la page "Sujets Pub/Sub" dans Cloud Console.

      Accéder à la page "Sujets Pub/Sub"

    2. Recherchez et sélectionnez le sujet temperaturesensor que vous avez créé.
    3. Sur la page des détails du sujet, cliquez sur + Publier un message pour ouvrir le volet de configuration Publier un message.
    4. Dans le champ Corps du message, saisissez 307.15.

      La création de ce message simule la publication d'une lecture de température en degrés Kelvin, reçue par Pub/Sub à partir d'un appareil IoT.

    5. Cliquez sur Publier pour publier le message dans le sujet et déclencher votre intégration.

    Une fois l'intégration terminée, celle-ci envoie un e-mail avec la température en degrés Kelvin convertie en degrés Celsius à l'adresse e-mail spécifiée dans la tâche Envoyer un e-mail. Confirmez la réception de l'e-mail dans votre client de messagerie.

    L'e-mail envoyé par l'intégration doit comporter un corps de message contenant la valeur 34.

    En plus de vérifier le contenu de l'e-mail, vous pouvez inspecter les journaux pour afficher l'état et la charge utile d'une intégration donnée. Pour afficher les journaux :

    1. Dans l'éditeur d'intégrations, cliquez sur image montrant l'icône des journaux d'exécutionAfficher les journaux d'exécution pour cette intégration. La page Journaux d'exécution s'affiche. Pour en savoir plus sur les journaux d'exécution, consultez la section Afficher les journaux d'exécution d'intégration.
    2. La page Journaux d'exécution vous permet d'afficher les détails de chaque tentative d'exécution d'une intégration. Chaque entrée inclut les détails de la tentative d'exécution, y compris les suivants :
      • Nom de l'intégration
      • ID d'exécution
      • État
      • Start time
      • Durée
      • Version d'intégration
      • ID du déclencheur
    3. Cliquez sur la flèche de développement (>) à côté de l'intégration exécutée pour afficher une liste développée des tâches et des variables dans l'intégration, ainsi que l'état de la tâche et les charges utiles variables.