Introducción a la Integración de Apigee y el activador de Cloud Pub/Sub

Aprende a crear una integración de muestra con la Apigee Integration y el activador de Cloud Pub/Sub. En los pasos que se indican a continuación, se describe cómo configurar el activador, las tareas, las variables y las asignaciones de datos necesarias para ejecutar una integración completa.

Descripción general

En esta guía de inicio rápido, crearás una integración en un activador de Cloud Pub/Sub para escuchar un tema existente de Pub/Sub que recibe lecturas de temperatura en grados Kelvin desde un dispositivo de IoT. Luego, puedes usar la tarea Asignación de datos para transformar el mensaje de Pub/Sub a Celsius y enviar el valor en un correo electrónico.

Antes de comenzar

Asegúrate de realizar las siguientes tareas antes de comenzar la guía de inicio rápido:

    • Asigna los siguientes roles de IAM al agente de servicio de integración de Apigee (service-PROJECT_NUMBER@gcp-sa-apigee.iam.gserviceaccount.com) en tu proyecto de Google Cloud.
      • Editor de Pub/Sub
      • Invocador de integraciones de Apigee

        Para obtener más información sobre cómo asignar roles de IAM, consulta Roles y permisos de IAM.

    Configura el entorno

    Crea un nuevo tema de Cloud Pub/Sub.

    En este instructivo, se supone que tienes un tema de Pub/Sub que recibe lecturas de temperatura en grados Kelvin desde un dispositivo de IoT. No es necesario tener el tema conectado a un dispositivo. En esta guía de inicio rápido, se prueba la capacidad de la integración de detectar el tema y realizar tareas cuando se activa.

    Para crear un tema de muestra a los fines de esta guía de inicio rápido, haz lo siguiente:

    1. Ve a la página de temas de Pub/Sub en la consola de Cloud.

      Ir a la página de temas de Pub/Sub

    2. Haga clic en Crear un tema.
    3. En el campo ID de tema, proporciona un nombre de tema único. Por ejemplo, temperaturesensor
    4. Haz clic en Guardar.

    Cómo crear una integración nueva

    Para crear una integración nueva, sigue estos pasos:

    1. En la IU de Apigee, selecciona tu organización de Apigee.
    2. Haz clic en Desarrollar > Integraciones.
    3. Haz clic en CREAR INTEGRACIÓN.
    4. Ingresa un nombre y una descripción en el diálogo Crear integración. Por ejemplo, my-test-integration.
    5. Selecciona una región para la integración.
    6. Haz clic en Crear para abrir el editor de integración.

    Agrega un activador de Cloud Pub/Sub

    Para agregar un activador de Cloud Pub/Sub a la integración, sigue estos pasos:
    1. En el editor de integración, selecciona Activadores para ver una lista de los activadores disponibles.
    2. Haz clic y coloca el elemento activador de Cloud Pub/Sub en el diseñador.

    Configura un activador de Cloud Pub/Sub

    Haz clic en el elemento activador de Cloud Pub/Sub en el editor de integración para ver el panel de configuración del activador.

    Especifica el tema que el activador debe escuchar en el campo Pub/Sub topic en el siguiente formato, en el que se muestra lo siguiente:

    projects/PROJECT_ID/topics/TOPIC_ID
    En el que:
    • PROJECT_ID es el proyecto de Google Cloud en el que se crea el tema.
    • TOPIC_ID es el ID del tema de Cloud Pub/Sub que creaste en Antes de comenzar.

    Por ejemplo, si tu proyecto se llama my-project y tu nombre del tema temperaturesensor, ingresa lo siguiente:

    projects/my-project/topics/temperaturesensor

    Para ver todos los temas disponibles en el proyecto de Google Cloud, consulta la columna Nombre del tema en Temas.

    El panel de configuración del activador de Cloud Pub/Sub propagará de forma automática el campo Resultado del activador con una variable para contener el mensaje de Pub/Sub.

    Agrega y configura la tarea de asignación de datos

    Para configurar la tarea de asignación de datos, haz lo siguiente:

    1. Selecciona Tareas para ver una lista de tareas disponibles.
    2. Haz clic y coloca el elemento Asignación de datos en el editor de integración.
    3. Haz clic en la tarea Asignación de datos en el diseñador para abrir el panel de configuración de la tarea.
    4. Haz clic en Open Data Mapping Editor.

      El Editor de asignación de datos te permite asignar variables de entrada a las variables de salida deseadas con las funciones de transformación disponibles. Entonces, el resultado está disponible como una variable para cualquier otra tarea o activador de integración. Si deseas obtener más detalles para pasar datos como variables, consulta Usa variables en la integración de Apigee.

      En esta guía de inicio rápido, sigue estos pasos para crear una asignación con el CloudPubSubMessage como entrada:

      1. Expande la variable JSON CloudPubSubMessage en la lista Variables y arrastra la variable CloudPubSubMessage.data a la primera fila Entrada.
      2. Haz clic en + (Agregar función) junto a la variable CloudPubSubMessage.data para ver la lista desplegable de funciones disponibles.
      3. Selecciona TO_DOUBLE() para convertir el valor CloudPubSubMessage.data en un tipo de datos de double.
      4. Vuelve a hacer clic en + (Agregar una función) para seleccionar y encadenar la función SUBTRACT.
      5. Ingresa 273.15 como el valor de la función SUBTRACT. Esto convierte la temperatura de Kelvin a grados Celsius.
      6. Haz clic en la primera fila de la columna Salida a fin de crear una variable nueva para conservar el valor de los datos transformados. Completa los siguientes campos:
        • Nombre: Ingresa TempInCelsius.
        • Marca Use as an output of integration.
        • Haz clic en Crear para crear la variable y cerrar el panel. La nueva variable TempInCelsium aparecerá en la lista Variables.
      7. Arrastra la variable TempInCelsius desde la lista Variables hasta la segunda fila de la columna Entrada.
      8. Haz clic en + (Agregar función) en la variable TempInCelsius para ver la lista desplegable de funciones disponibles.
      9. Haz clic en TO_STRING() para transformar el tipo de datos de la variable de double a string.
      10. Haz clic en la segunda fila de la columna Salida a fin de crear una variable nueva para conservar el valor de los datos transformados. Completa los siguientes campos:
        • Nombre: Ingresa TempInCelsiusString.
        • Valor predeterminado en blanco significa Seleccionar string vacía.
        • Selecciona la casilla de verificación Use as an output of integration.
        • Haz clic en Crear para crear la variable y cerrar el panel. La nueva variable aparecerá en la lista Variables en el lado izquierdo del editor de asignación de datos.
      11. Cierra el Editor de asignación de datos una vez que se complete la asignación. Los cambios se guardarán automáticamente.

    Agrega y configura la tarea Enviar correo electrónico

    Para configurar la tarea Enviar correo electrónico, haz lo siguiente:

    1. Selecciona Tareas en el editor de integración para ver la lista de tareas disponibles.
    2. Haz clic y coloca el elemento Enviar correo electrónico en el editor de integración.
    3. Haz clic en el elemento Enviar correo electrónico en el diseñador para abrir el panel de configuración de la tarea. Establezce las siguientes propiedades:
      • A los destinatarios: Ingresa tu dirección de correo electrónico. Usa este correo electrónico para confirmar que la integración se completó correctamente.
      • Asunto: Ingresa Temperature in Celsius.
      • Cuerpo en texto sin formato: Selecciona la variable TempInCelsiusString que creaste antes en la tarea Asignación de datos.
      • Las opciones restantes pueden dejarse en la configuración predeterminada.
      Los cambios en las propiedades se guardan de forma automática.

    Agrega las conexiones perimetrales necesarias

    Un perímetro es una conexión entre dos elementos en una integración. La conexión denota la dirección del flujo de control de un elemento (tarea o activador) a otro. Para obtener más información sobre los perímetros, consulta Perímetros.

    1. Para agregar una conexión perimetral desde el elemento Activador de Cloud Pub/Sub al elemento de Asignación de datos, coloca el cursor sobre un punto de control en el elemento Activador de Cloud Pub/Sub y, luego, haz clic y arrastra una línea hasta un punto de control en el elemento de tarea Asignación de datos. El perímetro denota el flujo de control de la tarea del activador de Cloud Pub/Sub a la tarea Asignación de datos.
    2. Agrega una conexión perimetral del elemento Asignación de datos al elemento de Enviar correo electrónico cuando colocas el cursor sobre un punto de control del elemento Asignación de datos, luego, haz clic en una línea y arrástrala hasta un punto de control en el elemento de tarea Enviar correo electrónico. Este perímetro denota el flujo de control de la tarea de Asignación de datos a la tarea de Enviar correo electrónico.

    La conexión completa debería aparecer como se muestra en la siguiente figura:

    Imagen que muestra el flujo de inicio rápido Imagen que muestra el flujo de inicio rápido

    Prueba la integración

    Para probar la nueva integración desde la página de temas de Pub/Sub, sigue estos pasos:

    1. Ve a la página de temas de Pub/Sub en Cloud Console.

      Ir a la página de temas de Pub/Sub

    2. Busca y, luego, selecciona el tema temperaturesensor que creaste.
    3. En la página de detalles del tema, haz clic en + Publicar mensaje para abrir el panel de configuración Publicar mensaje.
    4. En el campo Cuerpo del mensaje, ingresa 307.15.

      Este mensaje simula la publicación de una lectura de temperatura en Kelvin que recibió Pub/Sub desde un dispositivo IoT.

    5. Haz clic en Publicar para publicar el mensaje en el tema y activar tu integración.

    Cuando se completa de forma correcta, la integración envía un correo electrónico con la temperatura de Kelvin convertida en grados a la dirección de correo electrónico especificada en la tarea Enviar correo electrónico. Confirma la recepción del correo electrónico en tu cliente de correo electrónico.

    El correo electrónico que envió la integración debe tener un cuerpo de mensaje que contenga el valor 34.

    Además de verificar el contenido del correo electrónico, puedes inspeccionar los registros para ver el estado y la carga útil de una integración determinada. Para ver los registros, haz lo siguiente:

    1. En el editor de integración, haz clic en Imagen que muestra el ícono para los registros de ejecuciónVer registros de ejecución para esta integración. Aparecerá la página Registros de ejecución. Para obtener más información sobre los registros de ejecución, consulta Visualiza los registros de ejecución de integración.
    2. En la página Registros de ejecución, puedes ver los detalles de cada intento para ejecutar una integración. Cada entrada incluye detalles para el intento de ejecución, incluidos los siguientes:
      • Nombre de la integración
      • ID de ejecución
      • Estado
      • Hora de inicio
      • Duration
      • Versión de la integración
      • ID de activador
    3. Haz clic en la flecha desplegable (>) junto a la integración ejecutada para ver una lista expandida de tareas y variables en la integración, junto con el estado de la tarea y las cargas útiles de la variable.