Creación de Logic App desde Portal de Azure
¿Qué son las Logic Apps?
Azure Logic Apps es un servicio que ofrece la nube de Microsoft para automatizar flujos de tareas de forma sencilla sin necesidad de emplear código de programación.
Estos flujos de trabajo se diseñan en un entorno gráfico fácil de emplear, intuitivo y escalable. Su empleo más común es en aplicaciones de empresas, notificaciones , manejo de datos, ficheros, análisis de redes sociales….
El entorno de diseño de Logic Apps cuenta con un gran catálogo de conectores tanto simples (condiciones, acciones un bucle, …) como predefinidas (acceso, consultas y acciones sobre bases de datos, manejo de ficheros en FTP, envío de correos, peticiones HTTP …).
¿Cómo funciona una Logic App?
Para generar un flujo de trabajo en el entorno Logic App son necesarios 2 elementos:
- Un desencadenante (Trigger):
Es un conector que inicia las acciones de la Logic App. Se pueden usar tanto desencadenantes predefinidos en el catálogo (una envío de un Tweet, una solicitud HTTP a una url , ….) como otro tipo de desencadenantes creados por nosotros mismos (un Azure Function, una subida de un fichero a un Azure Storage…)
- Una acción / las acciones:
Es el flujo a ejecutar en base al desencadenante. Empleando conectores del catálogo y conectores simples (como condiciones, bucles…) un conjunto de acciones es capaz de relacionar una o varias aplicaciones y servicios para que realicen tareas concretas como enviar correos, Tweets, generar documentos, recibir datos de X Api o Base de datos…. Se pueden emplear tanto servicios o aplicaciones creadas por nosotros mismos como recursos del propio entorno de Azure.
Ejemplo práctico – Requisitos previos
Como ejemplo, vamos a crear una logic App directamente desde el portal de Azure (aunque también se puede crear desde Microsoft Power Automate en https://emea.flow.microsoft.com ).
Nuestro objetivo será realizar las siguientes acciones:
- Nuestra Aplicación lógica se ejecutará cuando el RSS del periódico ABC cree una noticia en su RSS https://www.abc.es/rss/feeds/abc_EspanaEspana.xml.
- La lectura del RSS se realizará cada minuto.
- Enviaremos un correo con el Título y el cuerpo de la noticia a nuestro correo personal.
- Una vez terminada la logic App y probada, vamos a modificarla creando además un tweet en nuestra cuenta personal con el titulo de la noticia y su enlace.
Ejemplo práctico – Creando la solución
Para comenzar a crear nuestra primera Logic App nos dirigiremos a https://portal.azure.com/ con nuestra cuenta de Microsoft.
Primero iremos a Crear un recurso -> Integración -> Logic App
Rellenamos el formulario con el grupo de recursos al que queremos asociarlo, suscripción, nombre de nuestra Logic App y región.
Seguidamente pulsamos en revisar y crear.
Una vez creado, le damos a Ir al recurso. Nos llevará directamente al diseñador de aplicaciones lógicas del portal de Azure:
Podemos elegir un desencadenador predeterminado para comenzar o crear una Aplicación lógica en blanco (en este ejemplo empezaremos por una Logic App en blanco).
Una vez seleccionada la opción de Logic App en blanco nos aparecerá el diseñador de Aplicaciónes Lógicas propio del portal de Azure, muy similar al de Microsoft Power Automate.
Siguiendo los requisitos de este ejemplo, seleccionaremos como desencadenante un RSS (lo ponemos en el buscador que aparece) y nos mostrará como ejemplo de desencadenante “Cuando se publica un elemento de fuente”
Añadimos la URL del RSS proporcionada en los requisitos y, como indican, leeremos el contenido del RSS cada minuto
Teniendo ya el Trigger (desencadenador) vamos a crear las acciones a realizar:
Justo debajo, le damos a “Nuevo paso” y añadimos “Office 365 Outlook” -> “Enviar Correo electrónico”
Nos solicitará iniciar sesión con la cuenta de Outlook que usaremos como origen de dicho correo.
Una vez iniciada la sesión, nos pedirá crear el correo que queremos enviar (destinatario, asunto…). Podemos utilizar ítems que obtengamos del trigger para introducirlos en el cuerpo del correo haciendo clic sobre éste. Nos aparecerá una ventana con 2 opciones (contenido dinámico y expresión).
Seleccionamos contenido dinámico -> Ver más y seleccionamos el Título y Elemento, creando así el correo
Terminada la nueva acción de enviar correo, podemos darle a Guardar y Ejecutar para porbar nuestra Logic App (tendremos que esperar a que se publiquen nuevas noticias para que se active el desencadenador).
Para saber si la Logic App se ha ejecutado, nos vamos al recurso de nuevo y en Información general podemos ver el historial de ejecuciones. Si esperamos, llegará el correo que creamos a su destinatario y en el historial de ejecuciones podremos ver un registro de la ejecución:
Así nos llegaría el correo:
Para demostrar que las logic Apps se pueden modificar fácilmente, vamos a cumplir el ultimo requisito del ejemplo. Nos dirigimos al Editar en el el panel de nuestra Logic App y añadimos un nuevo paso.
Buscamos twitter en acciones y le damos a publicar un Tweet
Nos pedirá una url de conexión que será https://twitter.com e iniciaremos sesión con la cuenta que publicará el tweet.
Una vez creada la conexión, añadimos el parámetro texto del tweet y, al igual que hicimos con el correo, pondremos como contenido dinámico el titulo de fuente y debajo el vínculo a la noticia.
De nuevo, guardamos, ejecutamos y esperamos a que se desencadene la acción.
Tras unos minutos, se enviará el correo y en se publicará el tweet:
Nuestra logic app será completamente funcional y el flujo de trabajo quedará de la siguiente forma:
Conclusión
Las Logic Apps son una solución muy eficaz a la hora de agilizar la automatización de tareas específicas tanto para soluciones de compañías como pequeñas tareas personales.
Su amplio catálogo de acciones brinda muchísimas posibilidades en el ámbito de la automatización y, además, es muy eficaz también con las tareas que usen APIS o funciones creadas por nosotros mismos en Azure, así como la gestión de cualquier tipo de Azure Storage, manejo y uso de bases de datos, (como hemos visto) gestión de acciones en redes sociales….
Todas sus posibilidades y combinación de acciones para crear soluciones son infinitas.
Autor/a: Raúl Castro de la Torre
Curso: Desarrollo Web Full Stack, MultiCloud y Multiplataforma
Centro: Tajamar
Año académico: 2020-2021
Otros datos de interés:
LinkedIn: https://www.linkedin.com/in/raul-castro-de-la-torre-861508103