Premiers pas avec Apigee Integration et Cloud Pub/Sub

Vous consultez la documentation d'Apigee X.
Consultez la documentation d'Apigee Edge.

Ce tutoriel explique comment créer un exemple d'intégration à l'aide d'Apigee Integration et du déclencheur Cloud Pub/Sub. Les étapes ci-dessous décrivent comment configurer le déclencheur Cloud Pub/Sub, les tâches, les variables et les mappages de données requis pour exécuter une intégration complète. Dans ce tutoriel, vous allez créer un sujet Pub/Sub, créer une intégration avec un déclencheur Cloud Pub/Sub pour écouter le sujet Pub/Sub, utiliser le mappage de données pour transformer les messages Pub/Sub et envoyer un e-mail, le tout à partir du concepteur d'intégrations.

Avant de commencer

Suivez ces étapes avant de commencer le tutoriel :

  • Confirmez vos identifiants de connexion Apigee et les détails de votre organisation. Ces informations sont nécessaires pour accéder à la fonctionnalité d'intégration au sein du concepteur.
  • Créez un sujet Cloud Pub/Sub. Ce tutoriel 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 tutoriel 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 tutoriel, 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. Pour ce tutoriel, saisissez temperaturesensor.
    4. Cliquez sur Enregistrer.

Créer une intégration

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

  1. Accédez à l'interface utilisateur d'Apigee et connectez-vous.
  2. Sélectionnez votre organisation dans le menu déroulant en haut à gauche de l'UI.
  3. Cliquez sur Développer > Intégrations.
  4. Cliquez sur CRÉER.
  5. Saisissez un nom et une description dans la boîte de dialogue Créer une intégration. Exemple : my-test-integration.
  6. Dans la liste des régions compatibles, sélectionnez une région pour l'intégration.
  7. Cliquez sur Create (Créer) pour ouvrir le concepteur d'intégration.

Ajouter un déclencheur Cloud Pub/Sub

Pour ajouter un déclencheur Cloud Pub/Sub à l'intégration, procédez comme suit :
  1. Dans le concepteur d'intégrations, cliquez sur + Ajouter une tâche/déclencheur pour afficher la boîte de dialogue permettant de sélectionner la tâche/le déclencher.
  2. Cliquez sur Déclencheurs pour afficher les déclencheurs disponibles.
  3. Faites glisser l'élément Cloud Pub/Sub Trigger (Déclencheur Cloud Pub/Sub) vers le concepteur.

Configurer un déclencheur Cloud Pub/Sub

Cliquez sur l'élément Déclencheur Cloud Pub/Sub dans le concepteur d'intégration 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ù :

  • 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.
projects/PROJECT_ID/topics/TOPIC_ID

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 renseigne automatiquement le champ Trigger Output (Sortie du déclencheur) avec une variable permettant de conserver le message Pub/Sub, comme illustré ci-dessous :

image de la variable de sortie du déclencheur

Configurer la tâche Mappage de données

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

  1. Sélectionnez Ajouter une tâche/un déclencheur > Tâches pour afficher la liste des tâches disponibles.
  2. Faites glisser l'élément Mappage des données vers le concepteur de l'intégration.
  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 tutoriel, procédez comme suit pour créer un mappage en utilisant CloudPubSubMessage comme entrée :

    1. Faites glisser le chip CloudPubSubMessage de la liste Variables sur la gauche de l'éditeur vers le premier champ Entrée.
    2. Cliquez sur + Ajouter une fonction dans le chip CloudPubSubMessage pour afficher la liste déroulante des fonctions disponibles.
    3. Cliquez sur TO_DOUBLE() pour convertir la valeur JSON CloudPubSubMessage en type de données double.
    4. Cliquez sur + pour chaîner une fonction de mappage supplémentaire.
    5. Cliquez sur SUBTRACT dans la liste déroulante et saisissez un paramètre 273.15 pour convertir en degrés Celsius la température exprimée en degrés Kelvin.
    6. Cliquez sur le premier champ de la colonne Résultat pour créer une variable contenant la valeur des données transformées. Remplissez les champs suivants :
      • Nom : saisissez TemperatureInCelsius.
      • 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 Température en degrés Celsius apparaît dans la liste Variables, sur le côté gauche de l'éditeur de mappage de données.
    7. Faites glisser le chip Température en degrés Celsius de la liste Variables vers le deuxième champ de la colonne Entrée.
    8. Cliquez sur + Ajouter une fonction dans le chip Température en degrés Celsius 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 le deuxième champ de la colonne Résultat pour créer une variable contenant la valeur des données transformées. Remplissez les champs suivants :
      • Nom : saisissez TemperatureInCelsiusString.
      • Moyens utilisés lorsque la valeur par défaut est vide ? : sélectionnez Chaîne vide.
      • 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 s'affiche dans la liste Variables, sur la gauche de l'éditeur de mappage de données.
    11. Le mappage une fois terminé doit apparaître comme illustré dans la figure ci-dessous :

      image du mappage de données terminé et des variables

    12. Cliquez sur la croix X dans l'éditeur de mappage de données pour enregistrer le mappage et fermer l'éditeur.
  5. 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.

Configurer la tâche Envoyer un e-mail

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

  1. Sélectionnez Ajouter une tâche/déclencheur > Tâches dans le concepteur d'intégration pour afficher la liste des tâches disponibles.

    Pour cette étape, utilisez la tâche Envoyer un e-mail.

  2. Faites glisser l'élément Envoyer un e-mail vers le concepteur de l'intégration.
  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 :
    • Destinataires : 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 de l'e-mail : sélectionnez la variable TemperatureInCelsiusString créée précédemment dans la tâche Mappage des 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.
  4. À 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. Les points de contrôle et la ligne de périphérie deviennent jaunes. La 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.

    À l'issue de cette étape, l'intégration est terminée et doit s'afficher comme illustré dans la figure ci-dessous :

    image du déclencheur d'intégration et des tâches

Tester l'intégration

Pour tester la nouvelle intégration, procédez comme suit :

  1. Cliquez sur le bouton Publier dans la barre d'outils du concepteur d'intégration.
  2. Accédez à la page "Sujets Pub/Sub" dans Cloud Console.

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

  3. Recherchez et sélectionnez le sujet temperaturesensor que vous avez créé précédemment.
  4. Sur la page des détails du sujet, cliquez sur + Publier un message pour ouvrir le volet de configuration Publier un message.
  5. 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.
  6. 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. Cliquez sur Journaux dans la barre d'outils du concepteur 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
    • Heure de début
    • Durée
    • ID 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 de l'intégration, ainsi que l'état des tâches et des charges utiles des variables, comme illustré dans la figure ci-dessous :

    image des journaux d'intégration

Félicitations ! Vous venez de configurer et de déployer une intégration avec Apigee Integration et un déclencheur Cloud Pub/Sub.

Étape suivante