Creación de un flujo de trabajo de aplicación lógica estándar para Azure Logic Apps de inquilino único mediante Visual Studio Code
Se aplica a: Azure Logic Apps (estándar)
En esta guía paso a paso se muestra cómo crear un flujo de trabajo de integración de ejemplo que se ejecuta en el entorno de Azure Logic Apps de inquilino único mediante Visual Studio Code con la extensión Azure Logic Apps (estándar). Antes de crear este flujo de trabajo, creará un recurso de aplicación lógica estándar, que proporciona las siguientes funcionalidades:
La aplicación lógica puede incluir varios flujos de trabajo con estado y sin estado.
Los flujos de trabajo de la misma aplicación lógica e inquilino se ejecutan en el mismo proceso que el entorno de ejecución de Azure Logic Apps, por lo que comparten los mismos recursos y proporcionan mayor rendimiento.
Puede crear, ejecutar y probar los flujos de trabajo localmente en el entorno de desarrollo de Visual Studio Code.
Cuando esté listo, puede implementar la aplicación lógica en Azure, donde el flujo de trabajo se puede ejecutar en el entorno de Azure Logic Apps de inquilino único o en un App Service Environment v3 (solo planes de App Service basados en Windows). También puede implementar y ejecutar el flujo de trabajo en cualquier lugar en el que se pueda ejecutar Kubernetes, incluido Azure, Azure Kubernetes Service, de forma local o incluso en otros proveedores de nube, debido al runtime en contenedores de Azure Logic Apps. Para obtener más información sobre Azure Logic Apps de inquilino único, revise Comparación de las opciones de un solo inquilino, multiinquilino y entorno del servicio de integración para Azure Logic Apps.
Aunque el flujo de trabajo de ejemplo está basado en la nube y solo tiene dos pasos, puede crear flujos de trabajo a partir de cientos de operaciones que pueden conectar una amplia variedad de aplicaciones, datos, servicios y sistemas en entornos híbridos, locales y en la nube. El flujo de trabajo de ejemplo comienza con el desencadenador Solicitud integrado y sigue con una acción de Office 365 Outlook. El desencadenador crea un punto de conexión al que se puede llamar para el flujo de trabajo y espera una solicitud HTTPS entrante de cualquier autor de llamada. Cuando el desencadenador recibe una solicitud y se activa, la siguiente acción se ejecuta mediante el envío de un correo electrónico a la dirección de correo electrónico especificada junto con las salidas seleccionadas del desencadenador.
Sugerencia
Si no tiene ninguna cuenta de Office 365, puede usar cualquier otra acción disponible que pueda enviar mensajes desde su cuenta de correo electrónico, como, por ejemplo, Outlook.com.
Para crear este flujo de trabajo de ejemplo mediante Azure Portal, siga los pasos descritos en Creación de flujos de trabajo de integración mediante Azure Logic Apps de un único inquilino y Azure Portal. Ambas opciones proporcionan la funcionalidad para desarrollar, ejecutar e implementar flujos de trabajo de aplicaciones lógicas en los mismos tipos de entornos. Sin embargo, con Visual Studio Code, puede desarrollar, probar y ejecutar flujos de trabajo localmente en el entorno de desarrollo.
A medida que avance, completará estas tareas de alto nivel:
- Cree un proyecto para la aplicación lógica y un flujo de trabajo con estado en blanco.
- Agregar un desencadenador y una acción.
- Ejecutar, probar, depurar y revisar el historial de ejecución de forma local.
- Buscar los detalles del nombre de dominio para el acceso al firewall.
- Implementar en Azure, que incluye opcionalmente habilitar Application Insights.
- Administrar la aplicación lógica implementada en Visual Studio Code y Azure Portal.
- Habilitar el historial de ejecución para flujos de trabajo sin estado.
- Habilitar o abrir Application Insights después de la implementación.
Requisitos previos
Acceso y conectividad
Acceda a Internet para poder descargar los requisitos, conectarse desde Visual Studio Code a su cuenta de Azure y publicar desde Visual Studio Code en Azure.
Una cuenta y una suscripción de Azure. Si aún no tiene una, regístrese para obtener una cuenta de Azure gratuita.
Para crear el mismo flujo de trabajo de ejemplo de este artículo, necesita una cuenta de correo electrónico de Office 365 Outlook que use una cuenta profesional o educativa de Microsoft para iniciar sesión.
Si elige un conector de correo electrónico diferente, como Outlook.com, puede seguir el ejemplo, ya que los pasos generales son los mismos. Sin embargo, las opciones pueden diferir de alguna manera. Por ejemplo, si usa el conector de Outlook.com, en su lugar use su cuenta personal de Microsoft para iniciar sesión.
Requisitos de almacenamiento
Para el desarrollo local en Visual Studio Code, debe configurar un almacén de datos local para los flujos de trabajo y el proyecto de aplicación lógica que se usarán para la ejecución en el entorno de desarrollo local. Puede usar y ejecutar el emulador de almacenamiento de Azurite como almacén de datos local.
Descargue e instale Azurite 3.12.0 o posterior para el sistema operativo Windows, macOS o Linux. Puede instalar desde dentro de Visual Studio Code o mediante npm.
Antes de ejecutar el flujo de trabajo de aplicación lógica, asegúrese de iniciar el emulador.
Para obtener más información, consulte la documentación de Azurite.
Herramientas
Instale las siguientes herramientas y versiones para su sistema operativo específico: Windows, macOS o Linux.
Visual Studio Code, que es gratuito. Además, descargue e instale estas herramientas para Visual Studio Code, en caso de que aún no las tenga:
Extensión de cuenta de Azure, que proporciona una experiencia común única de filtrado de suscripción e inicio de sesión de Azure para todas las demás extensiones de Azure en Visual Studio Code.
Extensión de C# para Visual Studio Code, que habilita la funcionalidad de F5 para ejecutar el flujo de trabajo de la aplicación lógica.
SDK de .NET 6.x.x, que incluye .NET Runtime 6.x.x, un requisito previo para el entorno de ejecución de Azure Logic Apps (Estándar).
Azure Functions Core Tools, versión 4.x
Estas herramientas incluyen una versión del mismo runtime en el que se basa el runtime de Azure Functions, que la extensión Azure Logic Apps (estándar) usa en Visual Studio Code.
Si tiene una instalación anterior a estas versiones, desinstale primero esa versión o asegúrese de que la variable de entorno PATH apunta a la versión que descargue e instale.
Azure Functions compatibilidad con v3 en Azure Logic Apps finaliza el 31 de marzo de 2023. A partir de mediados de octubre de 2022, los nuevos flujos de trabajo de aplicaciones lógicas estándar de Azure Portal usan automáticamente Azure Functions v4. Desde el 31 de enero de 2023, los flujos de trabajo estándar existentes en Azure Portal se migraron automáticamente a Azure Functions v4.
A menos que haya implementado sus aplicaciones lógicas estándar como proyectos basados en NuGet, las haya anclado a una versión de un conjunto específico o Microsoft haya determinado que debía tomar medidas antes de la migración automática, esta actualización está diseñada para que usted no tenga que hacer nada ni afecte al entorno de ejecución. Sin embargo, si cumple estas excepciones o si desea obtener más información sobre la compatibilidad con Azure Functions v3, consulte Azure Logic Apps Standard ahora es compatible con Azure Functions v4.
Extensión Azure Logic Apps (estándar) para Visual Studio Code.
Importante
Los proyectos creados con extensiones de versión preliminar anteriores ya no funcionan. Para continuar, desinstale las versiones anteriores y vuelva a crear los proyectos de aplicación lógica.
Para instalar la extensión Azure Logic Apps (estándar) , siga estos pasos:
En Visual Studio Code, en la barra de herramientas izquierda, seleccione Extensiones.
En el cuadro de búsqueda de extensiones, escriba
azure logic apps standard
. En la lista de resultados, seleccione Azure Logic Apps (estándar)>Instalar.Una vez finalizada la instalación, la extensión aparece en la lista Extensiones: Instaladas.
Sugerencia
Si la extensión no aparece en la lista de instaladas, pruebe a reiniciar Visual Studio Code.
Actualmente, puede tener las extensiones de consumo (multiinquilino) y estándar (inquilino único) instaladas al mismo tiempo. Las experiencias de desarrollo difieren entre sí de algunas maneras, pero la suscripción de Azure puede incluir los tipos de aplicaciones lógicas estándar y de consumo. Visual Studio Code muestra todas las aplicaciones lógicas implementadas en la suscripción de Azure, pero organiza las aplicaciones en cada extensión, Azure Logic Apps (consumo) y Azure Logic Apps (Estándar) .
Para usar la acción de Operaciones de código en línea que ejecuta JavaScript, instale las versiones 12.x.x o 14.x.x de Node.js.
Sugerencia
Para Windows, descargue la versión de MSI. Si usa la versión ZIP, tendrá que hacer que Node.js esté disponible manualmente. Para ello, será preciso que use una variable de entorno PATH para su sistema operativo.
Para ejecutar localmente las acciones y los desencadenadores basados en webhook, como el desencadenador de webhook integrado de HTTP, en Visual Studio Code, debe configurar el reenvío de la dirección URL de devolución de llamada.
Para probar el flujo de trabajo de ejemplo de este artículo, necesita una herramienta que pueda enviar llamadas al punto de conexión creado por el desencadenador Solicitud. Si no dispone de esta herramienta, puede descargar, instalar y usar la aplicación Postman.
Si crea los recursos de la aplicación lógica con una configuración que admite el uso de Application Insights, tiene la opción de habilitar el registro de diagnóstico y el seguimiento para la aplicación lógica. Puede hacerlo al crear la aplicación lógica o después de la implementación. Debe tener una instancia de Application Insights, pero puede crear este recurso con antelación, al crear la aplicación lógica o después de la implementación.
Configurar Visual Studio Code
Para asegurarse de que todas las extensiones estén instaladas correctamente, vuelva a cargar o reinicie Visual Studio Code.
Confirme que Visual Studio Code debe encontrar e instalar automáticamente las actualizaciones de extensión para que todas sus extensiones obtengan las actualizaciones más recientes. De lo contrario, tendrá que desinstalar manualmente la versión obsoleta e instalar la versión más reciente.
En el menú Archivo, vaya a Preferencias>Configuración.
En la pestaña Usuario, vaya a Características>Extensiones.
Confirme que las opciones Auto Check Updates (Comprobar actualizaciones automáticamente) y Actualización automática estén seleccionadas.
De forma predeterminada, la siguiente configuración está habilitada y configurada para la extensión de versión Azure Logic Apps (estándar):
Azure Logic Apps estándar: Project Runtime, que está establecido en la versión ~3
Nota
Esta versión es necesaria para utilizar las acciones de Operaciones de código en línea.
Azure Logic Apps estándar: Experimental View Manager, que habilita el diseñador más reciente en Visual Studio Code. Si tiene problemas en el diseñador, como realizar las operaciones de arrastrar y colocar elementos, desactive este valor.
Para buscar y confirmar esta configuración, siga estos pasos:
En el menú Archivo, vaya a Preferencias>Configuración.
En la pestaña Usuario, vaya a >Extensiones>Azure Logic Apps (estándar).
Por ejemplo, el valor Azure Logic Apps estándar: Project Runtime se puede buscar aquí, pero también se puede usar el cuadro de búsqueda para buscar otros valores.
Conexión a la cuenta de Azure
En la barra de actividad de Visual Studio Code, seleccione el icono de Azure.
En el panel de Azure, en Azure: Logic Apps (estándar) , seleccione Iniciar sesión en Azure. Cuando aparezca la página de autenticación de Visual Studio Code, inicie sesión con su cuenta de Azure.
Después de iniciar sesión, el panel de Azure muestra las suscripciones de la cuenta de Azure. Si también tiene la extensión pública, puede encontrar cualquier aplicación lógica que haya creado con esa extensión en la sección Logic Apps, no en la sección Logic Apps (estándar) .
Si no aparecen las suscripciones esperadas o si desea que el panel muestre solo suscripciones específicas, siga estos pasos:
En la lista de suscripciones, mueva el puntero situado junto a la primera suscripción hasta que aparezca el botón Seleccionar suscripciones (icono de filtro). Seleccione el icono de filtro.
O bien, en la barra de estado de Visual Studio Code, seleccione la cuenta de Azure.
Cuando aparezca otra lista suscripciones, seleccione las suscripciones que desee y, a continuación, asegúrese de seleccionar Aceptar.
Creación de un proyecto local
Para poder crear una aplicación lógica, antes debe crear un proyecto local, con el fin de que pueda administrar, ejecutar e implementar la aplicación lógica desde Visual Studio Code. El proyecto subyacente es similar a un proyecto de Azure Functions, también conocido como proyecto de aplicación de funciones; pero estos tipos de proyecto son independientes entre sí, por lo que las aplicaciones lógicas y las aplicaciones de función no pueden existir en el mismo proyecto.
En el equipo, cree una carpeta local vacía que se usará para el proyecto que se creará posteriormente en Visual Studio Code.
En Visual Studio Code, cierre todas las carpetas abiertas.
En el panel de Azure, junto a Azure: Logic Apps (estándar) , seleccione Crear proyecto (icono que muestra una carpeta y un rayo).
Si el Firewall de Windows Defender le pide que conceda acceso a la red para
Code.exe
, que es Visual Studio Code, y parafunc.exe
, que es Azure Functions Core Tools, seleccione Redes privadas, como una red doméstica o del trabajo>Permitir acceso.Vaya a la ubicación en la que creó la carpeta del proyecto, seleccione esa carpeta y continúe.
En la lista de plantillas que aparece, seleccione Stateful Workflow (Flujo de trabajo con estado) o Stateless Workflow (Flujo de trabajo sin estado). En este ejemplo se selecciona Stateful Workflow (Flujo de trabajo con estado).
Proporcione un nombre para el flujo de trabajo y presione ENTRAR. En este ejemplo se usa
Fabrikam-Stateful-Workflow
como nombre.Nota:
Es posible que reciba un error denominado azureLogicAppsStandard.createNewProject con el mensaje de error No se puede escribir en la configuración del área de trabajo porque azureFunctions.suppressProject no es una configuración registrada. Si lo hace, intente instalar la extensión de Azure Functions para Visual Studio Code, ya sea directamente desde Visual Studio Marketplace o desde dentro de Visual Studio Code.
Visual Studio Code termina de crear el proyecto y abre el archivo workflow.json del flujo de trabajo en el editor de código.
Nota
Si se le pide que seleccione cómo se debe abrir el proyecto, seleccione Open in current window (Abrir en la ventana actual) si desea abrir el proyecto en la ventana actual de Visual Studio Code. Para abrir una nueva instancia de Visual Studio Code, seleccione Open in new window (Abrir en ventana nueva).
En la barra de herramientas de Visual Studio, abra el panel del explorador, si aún no está abierto.
En el panel del explorador se muestra el proyecto, que ahora incluye los archivos de proyecto generados automáticamente. Por ejemplo, el proyecto tiene una carpeta que muestra el nombre del flujo de trabajo. Dentro de esta carpeta, el archivo workflow.json contiene la definición JSON subyacente del flujo de trabajo.
En Visual Studio Code, el proyecto de aplicación lógica tiene uno de los siguientes tipos:
- Basado en paquete de extensiones (Node.js), que es el tipo predeterminado.
- Basado en paquetes NuGet (.NET), que se puede convertir desde el tipo predeterminado.
En función de estos tipos, el proyecto incluye carpetas y archivos ligeramente diferentes. Un proyecto basado en NuGet incluye una carpeta .bin que contiene paquetes y otros archivos de biblioteca. Un proyecto basado en paquetes no incluye la carpeta .bin ni otros archivos. Algunos escenarios requieren un proyecto basado en NuGet para que la aplicación se ejecute, por ejemplo, si quiere desarrollar y ejecutar operaciones integradas personalizadas. Para obtener más información sobre cómo convertir el proyecto para que use NuGet, consulte Habilitación de la creación de conectores integrados.
Para el proyecto basado en paquetes predeterminado, el proyecto tiene una estructura de carpetas y archivos similar a la del ejemplo siguiente:
MyBundleBasedLogicAppProjectName | .vscode | Artifacts || Maps ||| MapName1 ||| ... || Schemas ||| SchemaName1 ||| ... | WorkflowName1 || workflow.json || ... | WorkflowName2 || workflow.json || ... | workflow-designtime | .funcignore | connections.json | host.json | local.settings.json
En el nivel raíz del proyecto, puede encontrar los siguientes archivos y carpetas con otros elementos:
Nombre Archivo o carpeta Descripción .vscode Carpeta Contiene archivos de configuración relacionados con Visual Studio Code, como extensions.json, launch.json, settings.json y tasks.json. Artefactos Carpeta Contiene artefactos de la cuenta de integración que se definen y usan en los flujos de trabajo que admiten escenarios de negocio a negocio (B2B). Por ejemplo, la estructura de ejemplo incluye mapas y esquemas para operaciones de transformación y validación de XML. <WorkflowName> Carpeta En cada flujo de trabajo, la carpeta <WorkflowName> incluye un archivo workflow.json, que contiene la definición JSON subyacente de ese flujo de trabajo. workflow-designtime Carpeta Contiene archivos de configuración relacionados con el entorno de desarrollo. .funcignore Archivo Contiene información relacionada con la instancia de Azure Functions Core Tools instalada. connections.json Archivo Contiene los metadatos, los puntos de conexión y las claves de las conexiones administradas y de Azure Functions que se usan en los flujos de trabajo.
Importante: Para usar diferentes conexiones y funciones en cada entorno, asegúrese de parametrizar este archivo connections.json y de actualizar los puntos de conexión.host.json Archivo Contiene valores y opciones de configuración específicos del runtime, como, por ejemplo, los límites predeterminados para la plataforma de Azure Logic Apps de un solo inquilino, las aplicaciones lógicas, los flujos de trabajo, los desencadenadores y las acciones. En el nivel raíz del proyecto de aplicación lógica, el archivo de metadatos host.json contiene los valores y las opciones de configuración predeterminados que todos los flujos de trabajo de la misma aplicación lógica usan mientras se ejecutan, ya sea localmente o en Azure.
Nota: Al crear la aplicación lógica, Visual Studio Code crea un archivo host.snapshot.*.json de copia de seguridad en el contenedor de almacenamiento. Si elimina la aplicación lógica, este archivo de copia de seguridad no se elimina. Si crea otra aplicación lógica con el mismo nombre, se crea otro archivo de instantánea. Solo puede tener 10 instantáneas para la misma aplicación lógica. Si se supera este número, verá el siguiente error:Microsoft.Azure.WebJobs.Script.WebHost: Repository has more than 10 non-decryptable secrets backups (host))
Para resolver este error, elimine los archivos de instantáneas adicionales del contenedor de almacenamiento.local.settings.json Archivo Contiene la configuración de la aplicación, las cadenas de conexión y otras configuraciones que los flujos de trabajo usan mientras se ejecutan localmente. En otras palabras, esta configuración y estos valores solo se aplican cuando se ejecutan los proyectos en el entorno de desarrollo local. Durante la implementación en Azure, el archivo y la configuración se omiten y no se incluyen con la implementación.
Este archivo almacena valores y opciones de configuración como variables de entorno local que las herramientas de desarrollo local usan como valoresappSettings
. Puede llamar a estas variables de entorno y hacer referencia a ellas tanto en tiempo de ejecución como en tiempo de implementación mediante la configuración de la aplicación y los parámetros.
Importante: el archivo local.settings.json puede contener secretos, por lo que debe asegurarse de excluir también este archivo del control de código fuente del proyecto.
Habilitación de la creación de conectores integrados
Puede crear sus propios conectores integrados para cualquier servicio que necesite mediante el marco de extensibilidad de Azure Logic Apps de un único inquilino. De forma similar a los conectores integrados, como Azure Service Bus y SQL Server, estos conectores proporcionan mayor rendimiento, baja latencia y conectividad local, y se ejecutan de forma nativa en el mismo proceso que el runtime de Azure Logic Apps de un único inquilino.
La funcionalidad de creación solo está disponible actualmente en Visual Studio Code, pero no está habilitada de manera predeterminada. Para crear estos conectores, antes debe convertir el proyecto de una extensión basada en agrupación (Node.js) a una basada en paquetes NuGet (.NET).
Importante
Esta acción es una operación unidireccional que no se puede deshacer.
En el panel Explorador, en la raíz del proyecto, mueva el puntero del ratón sobre cualquier área en blanco debajo de todos los demás archivos y carpetas, abra el menú contextual y seleccione Convert to Nuget-based Logic App project (Convertir en proyecto de aplicación lógica basada en Nuget).
Cuando se le pida, confirme la conversión del proyecto.
Para continuar, revise y siga los pasos descritos en el artículo Azure Logic Apps en ejecución en cualquier ubicación: extensibilidad de conectores integrada.
Apertura del archivo de definición del flujo de trabajo en el diseñador
Expanda la carpeta del proyecto para el flujo de trabajo. Abra el menú contextual del archivo workflow.json y seleccione Open in Designer (Abrir en el diseñador).
En la lista Enable connectors in Azure (Habilitar conectores en Azure), seleccione la opción Use connectors from Azure (Usar conectores de Azure) que se aplica a todos los conectores administrados que están disponibles e implementados en Azure, no solo a los conectores de los servicios de Azure.
Nota
Actualmente, los flujos de trabajo sin estado solo admiten acciones de conectores administrados que se implementan en Azure, y no desencadenadores. Aunque tiene la opción de habilitar conectores en Azure para el flujo de trabajo sin estado, el diseñador no muestra ningún desencadenador de conector administrado para que pueda seleccionarlo.
En la lista Seleccionar suscripción, seleccione la suscripción de Azure que se usará para el proyecto de aplicación lógica.
En la lista del grupo de recursos, seleccione Crear un nuevo grupo de recursos.
Proporcione un nombre para el grupo de recursos y presione ENTRAR. En este ejemplo se usa
Fabrikam-Workflows-RG
.En la lista de ubicaciones, seleccione la región de Azure que se usará al crear el grupo de recursos y los recursos. En este ejemplo se usa Centro-oeste de EE. UU.
Después de realizar este paso, Visual Studio Code abre el diseñador de flujos de trabajo.
Nota
Cuando Visual Studio Code inicia la API en tiempo de diseño del flujo de trabajo, puede que reciba un mensaje que indica que el inicio puede tardar unos segundos. Puede pasar por alto este mensaje o seleccionar Aceptar.
Si el diseñador no se abre, consulte en la sección de solución de problemas, el apartado en que se indica qué hacer si el diseñador no se abre.
Después de que aparezca el diseñador, aparece la solicitud Elija una operación en el diseñador y está seleccionada de manera predeterminada, lo que muestra el panel Agregar una acción.
A continuación, agregue un desencadenador y acciones al flujo de trabajo.
Adición de un desencadenador y acciones
Después de abrir el diseñador, aparece la solicitud Elija una operación en el diseñador y está seleccionada de manera predeterminada. Ahora puede empezar a crear el flujo de trabajo agregando un desencadenador y acciones.
El flujo de trabajo de este ejemplo usa este desencadenador y estas acciones:
El desencadenador de solicitud integrado, Cuando se recibe una solicitud HTTP, que recibe llamadas o solicitudes entrantes y crea un punto de conexión al que pueden llamar otros servicios o aplicaciones lógicas.
La acción de Office 365 Outlook, Enviar correo electrónico.
La acción Respuesta integrada, que se usa para enviar una respuesta y devolver los datos al autor de la llamada.
Adición del desencadenador Request
Junto al diseñador, en el panel Agregar un desencadenador, en el cuadro de búsqueda Elegir una operación, asegúrese de que Integrado esté seleccionado para que pueda seleccionar un desencadenador que se ejecute de forma nativa.
En el cuadro de búsqueda Elegir una operación, escriba
when a http request
y seleccione el desencadenador de solicitud integrado denominado Cuando se recibe una solicitud HTTP.Cuando el desencadenador aparece en el diseñador, se abre el panel de detalles del desencadenador para mostrar las propiedades, la configuración y otras acciones del desencadenador.
Sugerencia
Si el panel de detalles no aparece, asegúrese de que el desencadenador esté seleccionado en el diseñador.
Si necesita eliminar un elemento del diseñador, siga estos pasos para eliminar elementos del diseñador.
Adición de la acción Office 365 Outlook
En el diseñador, en el desencadenador que agregó, seleccione el signo más (+) >Agregar una acción.
Aparece la solicitud Elija una operación en el diseñador, y se vuelve a abrir el panel Agregar una acción para que pueda seleccionar la acción siguiente.
En el panel Agregar una acción, en el cuadro de búsqueda Elegir una operación, seleccione Azure para poder seleccionar una acción para un conector administrado que esté implementado en Azure.
En este ejemplo se selecciona y usa la acción de Office 365 Outlook, Enviar correo electrónico (V2) .
En el panel de detalles de la acción, seleccione Iniciar sesión para que pueda crear una conexión a su cuenta de correo electrónico.
Cuando Visual Studio Code le pida consentimiento para acceder a su cuenta de correo electrónico, seleccione Abrir.
Sugerencia
Para evitar futuras solicitudes, seleccione Configure Trusted Domains (Configurar dominios de confianza) para que pueda agregar la página de autenticación como dominio de confianza.
Siga las indicaciones posteriores para iniciar sesión, permitir el acceso y permitir que se vuelva a Visual Studio Code.
Nota
Si transcurre demasiado tiempo antes de completar las solicitudes, el proceso de autenticación agota el tiempo de espera y se produce un error. En este caso, vuelva al diseñador e intente iniciar sesión de nuevo para crear la conexión.
Cuando la extensión Azure Logic Apps (estándar) le solicite consentimiento para acceder a su cuenta de correo electrónico, seleccione Abrir. Siga la solicitud a continuación para permitir el acceso.
Sugerencia
Para evitar futuras solicitudes, seleccione No preguntar de nuevo sobre esta extensión.
Una vez que Visual Studio Code crea la conexión, algunos conectores muestran el mensaje
The connection will be valid for {n} days only
. Este límite de tiempo se aplica solo mientras se crea la aplicación lógica en Visual Studio Code. Después de la implementación, ya no se aplica este límite porque la aplicación lógica puede autenticarse durante el tiempo de ejecución mediante su identidad administrada asignada por el sistema habilitada automáticamente. Esta identidad administrada se diferencia de las credenciales de autenticación o de la cadena de conexión que se usan al crear una conexión. Si deshabilita esta identidad administrada asignada por el sistema, las conexiones no funcionarán durante el tiempo de ejecución.En el diseñador, si la acción Enviar correo electrónico no aparece seleccionada, seleccione esa acción.
En el panel de detalles de la acción, en la pestaña Parámetros, proporcione la información necesaria para la acción, por ejemplo:
Propiedad Obligatorio Value Descripción To Sí <your-email-address> El destinatario del correo electrónico, que puede ser su dirección de correo electrónico con fines de prueba. En este ejemplo se usa la dirección de correo electrónico ficticia sophiaowen@fabrikam.com
.Subject Sí An email from your example workflow
El asunto del correo electrónico Cuerpo Sí Hello from your example workflow!
El contenido del cuerpo del correo electrónico. Nota
Si quiere hacer cambios en el panel de detalles de la pestaña Configuración, Resultado estático o Ejecutar después de, asegúrese de seleccionar Listo para confirmar dichos cambios antes de cambiar de pestaña o cambiar el foco al diseñador. De lo contrario, Visual Studio Code no conservará los cambios.
En el diseñador, seleccione Guardar.
Importante
Para ejecutar localmente un flujo de trabajo que usa un desencadenador o acciones basados en webhook, como el desencadenador o acción de webhook de HTTP integrado, debe habilitar esta funcionalidad mediante la configuración del reenvío de la dirección URL de devolución de llamada del webhook.
Habilitación de webhooks que se ejecutan localmente
Cuando se usa un desencadenador o una acción basados en webhook, como Webhook de HTTP, con una aplicación lógica que se ejecuta en Azure, el runtime de Logic Apps se suscribe al punto de conexión de servicio mediante la generación y el registro de una dirección URL de devolución de llamada con ese punto de conexión. Después, el desencadenador o la acción espera a que el punto de conexión de servicio llame a la dirección URL. Sin embargo, cuando se trabaja en Visual Studio Code, la dirección URL de devolución de llamada generada comienza por http://localhost:7071/...
. Esta dirección URL es para el servidor localhost, que es privado, por lo que el punto de conexión de servicio no puede llamar a esta dirección URL.
Para ejecutar localmente las acciones y los desencadenadores basados en webhook en Visual Studio Code, debe configurar una dirección URL pública que exponga el servidor localhost y reenvíe de forma segura las llamadas desde el punto de conexión de servicio a la dirección URL de devolución de llamada del webhook. Puede usar un servicio de reenvío y una herramienta como ngrok, que abre un túnel HTTP en el puerto localhost, o puede usar su propia herramienta equivalente.
Configuración del reenvío de llamadas con ngrok
Regístrese para obtener una cuenta de ngrok si no tiene una. En otro caso, inicie sesión en su cuenta.
Obtenga el token de autenticación personal, que el cliente de ngrok necesita para conectarse y autentique el acceso a su cuenta.
Para encontrar la página de tokens de autenticación, en el menú del panel de la cuenta, expanda Autenticación y seleccione Your Authtoken (Su Authtoken).
En el cuadro Your Authtoken (Su Authtoken), copie el token en una ubicación segura.
En la página de descargas de ngrok o el panel de la cuenta, descargue la versión de ngrok que desee y extraiga el archivo .zip. Para obtener más información, consulte Paso 1: Descomprima para la instalación.
En el equipo, abra la herramienta del símbolo del sistema. Desplácese hasta la ubicación en que se encuentra el archivo ngrok.exe.
Conecte el cliente de ngrok a su cuenta de ngrok ejecutando el siguiente comando. Para más información, consulte Paso 2: Conecte su cuenta.
ngrok authtoken <your_auth_token>
Abra el túnel HTTP en el puerto localhost 7071 ejecutando el siguiente comando. Para obtener más información, consulte el Paso 3: Actívelo.
ngrok http 7071
En la salida, busque la línea siguiente:
http://<domain>.ngrok.io -> http://localhost:7071
Copie y guarde la dirección URL que tiene este formato:
http://<domain>.ngrok.io
Configuración de la dirección URL de reenvío en la configuración de la aplicación
En Visual Studio Code, en el diseñador, agregue el desencadenador o la acción HTTP + webhook.
Cuando aparezca el mensaje en que se solicita la ubicación del punto de conexión del host, escriba la dirección URL de reenvío (redireccionamiento) que creó anteriormente.
Nota
Si se ignora el mensaje, aparecerá una advertencia, en la que se indica que se debe especificar la dirección URL de reenvío, así que seleccione Configurar y escriba la dirección URL. Después de este paso, el mensaje no volverá a aparecer en las acciones o desencadenadores de webhook que pueda agregar posteriormente.
Para que el mensaje vuelva a aparecer, en el nivel raíz del proyecto, abra el menú contextual del archivo local.settings.json y seleccione Configure Webhook Redirect Endpoint (Configurar punto de conexión de redireccionamiento de webhook). Ahora aparece el símbolo del sistema para que pueda especificar la dirección URL de reenvío.
Visual Studio Code agrega la dirección URL de reenvío al archivo local.settings.json de la carpeta raíz del proyecto. En el objeto
Values
, ahora aparece la propiedad denominadaWorkflows.WebhookRedirectHostUri
y se establece en la dirección URL de reenvío, por ejemplo:{ "IsEncrypted": false, "Values": { "AzureWebJobsStorage": "UseDevelopmentStorage=true", "FUNCTIONS_WORKER_RUNTIME": "node", "FUNCTIONS_V2_COMPATIBILITY_MODE": "true", <...> "Workflows.WebhookRedirectHostUri": "http://xxxXXXXxxxXXX.ngrok.io", <...> } }
Nota
Si el proyecto está basado en paquetes NuGet (.NET) y no en la agrupación de extensiones (Node.js),
"FUNCTIONS_WORKER_RUNTIME"
se establece en"dotnet"
. Sin embargo, para usar operaciones de código insertado, debe haber establecido"FUNCTIONS_WORKER_RUNTIME"
en"node"
La primera vez que se inicia una sesión de depuración local o se ejecuta el flujo de trabajo sin depurar, el runtime de Logic Apps registra el flujo de trabajo con el punto de conexión de servicio y se suscribe a ese punto de conexión para notificar las operaciones de webhook. La próxima vez que se ejecute el flujo de trabajo, el tiempo de ejecución no se registrará ni se volverá a suscribir porque el registro de la suscripción ya existe en el almacenamiento local.
Al detener la sesión de depuración para una ejecución de flujo de trabajo que usa desencadenadores o acciones basados en webhook de ejecución local, los registros de suscripción existentes no se eliminan. Para anular el registro, tiene que quitar o eliminar manualmente los registros de suscripciones.
Nota
Después de que el flujo de trabajo empiece a ejecutarse, la ventana de terminal podría mostrar errores como el de este ejemplo:
message='Http request failed with unhandled exception of type 'InvalidOperationException' and message: 'System.InvalidOperationException: Synchronous operations are disallowed. Call ReadAsync or set AllowSynchronousIO to true instead.'
En este caso, abra el archivo local.settings.json en la carpeta raíz del proyecto y asegúrese de que la propiedad está establecida en true
:
"FUNCTIONS_V2_COMPATIBILITY_MODE": "true"
Administración de puntos de interrupción para la depuración
Antes de ejecutar y probar el flujo de trabajo de la aplicación lógica mediante el inicio de una sesión de depuración, puede establecer puntos de interrupción dentro del archivo workflow.json de cada flujo de trabajo. No es necesario realizar ninguna otra configuración.
En la actualidad, los puntos de interrupción solo se admiten en las acciones, no en los desencadenadores. Cada definición de acción tiene estas ubicaciones de puntos de interrupción:
Establezca el punto de interrupción inicial en la línea que muestra el nombre de la acción. Cuando este punto de interrupción llega durante la sesión de depuración, puede revisar las entradas de la acción antes de que se evalúen.
Establezca el punto de interrupción inicial en la línea que muestra la llave de cierre ( } ) de la acción. Cuando este punto de interrupción llega durante la sesión de depuración, puede revisar los resultados de la acción antes de que esta termine su ejecución.
Para agregar un punto de interrupción, siga estos pasos:
Abra el archivo workflow.json para el flujo de trabajo que quiere depurar.
En la línea donde quiere establecer el punto de interrupción, en la columna izquierda, seleccione dentro de esa columna. Para quitar el punto de interrupción, seleccione ese punto de interrupción.
Al iniciar la sesión de depuración, la vista de ejecución aparece en el lado izquierdo de la ventana de código, mientras que la barra de herramientas de depuración aparece cerca de la parte superior.
Nota
Si la vista de ejecución no aparece automáticamente, presione Ctrl+Mayús+D.
Para revisar la información disponible cuando se alcanza un punto de interrupción, en la vista de ejecución, examine el panel Variables.
Para continuar con la ejecución del flujo de trabajo, en la barra de herramientas de depuración, seleccione Continuar (botón de reproducción).
Puede agregar y quitar puntos de interrupción en cualquier momento durante la ejecución del flujo de trabajo. Sin embargo, si actualiza el archivo workflow.json después de que se inicie la ejecución, los puntos de interrupción no se actualizan automáticamente. Para actualizar los puntos de interrupción, reinicie la aplicación lógica.
Para obtener información general, consulte Puntos de interrupción: Visual Studio Code.
Ejecución, prueba y depuración locales
Para probar la aplicación lógica, siga estos pasos para iniciar una sesión de depuración y encontrar la dirección URL del punto de conexión que se crea mediante el desencadenador de solicitud. Necesitará esta dirección URL para poder enviar una solicitud a ese punto de conexión más adelante.
Para depurar un flujo de trabajo sin estado con mayor facilidad, puede habilitar el historial de ejecución para ese flujo de trabajo.
En la barra de actividad de Visual Studio Code, abra el menú Ejecutar y seleccione Iniciar depuración (F5).
Se abre la ventana Terminal para que pueda revisar la sesión de depuración.
Nota
Si aparece el error "Error exists after running preLaunchTask 'generateDebugSymbols'" (Se produce un error tras ejecutar preLaunchTask 'generateDebugSymbols), consulte la sección La sesión de depuración no se inicia.
Ahora, busque la URL de devolución de llamada para el punto de conexión en el desencadenador Solicitud.
Vuelva a abrir el panel del Explorador para que pueda ver el proyecto.
En el menú contextual del archivo workflow.json, seleccione Información general.
Busque el valor URL de devolución de llamadas, que tiene un aspecto similar a esta dirección URL para el desencadenador Solicitud de ejemplo:
http://localhost:7071/api/<workflow-name>/triggers/manual/invoke?api-version=2020-05-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=<shared-access-signature>
Para probar la dirección URL de devolución de llamada al desencadenar el flujo de trabajo de la aplicación lógica, abra Postman o su herramienta preferida para crear y enviar solicitudes.
Este ejemplo continúa con Postman. Para obtener más información, consulte la Introducción a Postman.
En la barra de herramientas de Postman, seleccione New (Nuevo).
En el panel Create New (Crear nuevo), en Building Blocks (Bloques de creación), seleccione Request (Solicitud).
En la ventana Save Request (Guardar solicitud), en Request name (Nombre de solicitud), escriba un nombre para la solicitud, por ejemplo,
Test workflow trigger
.En Select a collection or folder to save to (Seleccionar una colección o carpeta donde guardar), seleccione Create Collection (Crear colección).
En Todas las colecciones, escriba un nombre para la colección que se va a crear para organizar las solicitudes, presione ENTRAR y, luego, seleccione Guardar en <nombre-de-la-colección>. En este ejemplo se usa
Logic Apps requests
como nombre de la colección.En Postman, se abre el panel de solicitudes para que pueda enviar una solicitud a la URL de devolución de llamada para el desencadenador Solicitud.
Vuelva a Visual Studio Code. Desde la página de información general del flujo de trabajo, copie el valor de la propiedad Dirección URL de devolución de llamada.
Vuelva a Postman. En el panel de solicitudes, junto a la lista de métodos, que actualmente muestra GET como método de solicitud predeterminado, pegue la URL de devolución de llamada que copió anteriormente en el cuadro de dirección y seleccione Send (Enviar).
El flujo de trabajo de aplicación lógica de ejemplo envía un correo electrónico similar a este ejemplo:
En Visual Studio Code, vuelva a la página de información general del flujo de trabajo.
Si creó un flujo de trabajo con estado, después de que la solicitud que envió desencadene el flujo de trabajo, la página de información general mostrará el estado y el historial de ejecución del flujo de trabajo.
Sugerencia
Si el estado de ejecución no aparece, intente actualizar la página de información general seleccionando Actualizar. No se produce ninguna ejecución para un desencadenador que se omite debido a criterios que no se cumplen o si no se encuentra ningún dato.
En la tabla siguiente se muestran los posibles estados finales que cada ejecución de flujo de trabajo puede tener y mostrar en Visual Studio Code:
Estado de la ejecución Descripción Anulado La ejecución se ha detenido o no ha finalizado debido a problemas externos, por ejemplo, una interrupción del sistema o una suscripción de Azure vencida. Cancelado La ejecución se ha desencadenado y se ha iniciado, pero ha recibido una solicitud de cancelación. Erróneo Se ha producido un error en al menos una acción de la ejecución. No se ha configurado ninguna acción posterior en el flujo de trabajo para controlar el error. Ejecución La ejecución se ha desencadenado y está en curso, pero este estado también puede aparecer para una ejecución que está limitada debido a límites de acción o al plan de precios actual. Sugerencia: Si se configura un registro de diagnóstico, se puede obtener información sobre los eventos de limitación que se produzcan.
Correcto La ejecución se ha completado correctamente. Si se ha producido un error en alguna acción, se ha controlado mediante una acción posterior en el flujo de trabajo. Tiempo de espera agotado Se ha agotado el tiempo de espera de la ejecución porque la duración actual ha superado el límite de duración de la ejecución, que se controla mediante el valor Retención del historial de ejecución en días. La duración de una ejecución se calcula mediante su hora de inicio y su límite de duración en esa hora de inicio. Nota: Si la duración de la ejecución también supera el límite de retención del historial de ejecución actual, que también se controla mediante el valor Retención del historial de ejecución en días, la ejecución se borra del historial de ejecución mediante un trabajo de limpieza diaria. Con independencia de que la ejecución agote el tiempo de espera o se complete, el período de retención siempre se calcula mediante la hora de inicio de la ejecución y el límite de retención actual. Por tanto, si reduce el límite de duración de una ejecución en curso, se agota su tiempo de espera. Pero la ejecución se mantiene o se borra del historial de ejecución en función de si su duración supera el límite de retención.
En espera La ejecución no se ha iniciado o está en pausa, por ejemplo, debido a un flujo de trabajo anterior que sigue en ejecución. Para revisar los estados de cada paso de una ejecución específica, y las entradas y salidas del paso, seleccione el botón de puntos suspensivos ( … ) para esa ejecución y seleccione Mostrar la ejecución.
Visual Studio Code abre la vista de supervisión y muestra el estado de cada paso de la ejecución.
Nota
Si se produce un error en una ejecución y un paso en la vista de supervisión muestra el error
400 Bad Request
, este problema puede deberse a un nombre de acción o nombre de desencadenador más largo que hace que el identificador uniforme de recursos (URI) subyacente supere el límite de caracteres predeterminado. Para más información, vea "400 Solicitud errónea".En la tabla siguiente se muestran los posibles estados que cada acción de flujo de trabajo puede tener y mostrar en Visual Studio Code:
Estado de la acción Descripción Anulado La acción se ha detenido o no ha finalizado debido a problemas externos; por ejemplo, una interrupción del sistema o una suscripción de Azure vencida. Cancelado La acción se estaba ejecutando, pero recibió una solicitud de cancelación. Erróneo Se produjo un error en la acción. Ejecución La acción se está ejecutando actualmente. Omitido La acción se omitió porque se produjo un error en la acción inmediatamente anterior. Una acción tiene una condición runAfter
que requiere que la acción anterior finalice correctamente antes de que se pueda ejecutar la acción actual.Correcto La acción se realizó correctamente. Se realizó correctamente con reintentos La acción se realizó correctamente, pero solo después de uno o varios reintentos. Para revisar el historial de reintentos en la vista de detalles del historial de ejecución, seleccione esa acción para que pueda ver las entradas y salidas. Tiempo de espera agotado La acción se detuvo debido al límite de tiempo de espera que especificó la configuración de la acción. En espera Se aplica a una acción de webhook que está esperando una solicitud entrante de un autor de llamada. Para revisar las entradas y salidas de cada paso, seleccione el paso que quiere inspeccionar.
Para revisar aún más las entradas y salidas sin procesar para ese paso, seleccione Mostrar entradas sin procesar o Mostrar salidas sin procesar.
Para detener la sesión de depuración, en el menú Ejecutar, seleccione Detener depuración (Mayús+F5).
Devolución de respuesta
Para devolver una respuesta al autor de la llamada que envió una solicitud a la aplicación lógica, puede usar la acción Respuesta integrada para un flujo de trabajo que se inicie con el desencadenador de solicitud.
En el diseñador de flujos de trabajo, en la acción Enviar un correo electrónico, seleccione el signo más (+) >Agregar una acción.
Aparece la solicitud Elija una operación en el diseñador, y se vuelve a abrir el panel Agregar una acción para que pueda seleccionar la acción siguiente.
En el panel Agregar una acción, en el cuadro de búsqueda Elegir una acción, asegúrese de que Integrado esté seleccionado. En el cuadro de búsqueda, escriba
response
y seleccione la acción Respuesta.Cuando aparece la acción Respuesta en el diseñador, se abre automáticamente el panel de detalles de la acción.
En la pestaña Parámetros, proporcione la información necesaria para la función a la que quiere llamar.
En este ejemplo se devuelve el valor de propiedad Cuerpo que se obtiene de la acción Enviar correo electrónico.
Haga clic dentro del cuadro de propiedad Cuerpo para que aparezca la lista de contenido dinámico y muestre los valores de salida disponibles del desencadenador y las acciones anteriores en el flujo de trabajo.
En la lista de contenido dinámico, en Enviar correo electrónico, seleccione Cuerpo.
Cuando haya terminado, la propiedad Cuerpo de la acción Respuesta estará establecida en el valor de salida Cuerpo de la acción Enviar correo electrónico.
En el diseñador, seleccione Guardar.
Nueva comprobación de la aplicación lógica
Después de realizar actualizaciones en la aplicación lógica, puede ejecutar otra prueba volviendo a ejecutar el depurador en Visual Studio y enviando otra solicitud para desencadenar la aplicación lógica actualizada, de forma similar a los pasos descritos en Ejecución, prueba y depuración locales.
En la barra de actividad de Visual Studio Code, abra el menú Ejecutar y seleccione Iniciar depuración (F5).
En Postman o en la herramienta para crear y enviar solicitudes, envíe otra solicitud para desencadenar el flujo de trabajo.
Si ha creado un flujo de trabajo con estado, en la página información general del flujo de trabajo, compruebe el estado de la ejecución más reciente. Para ver los estados, las entradas y las salidas de cada paso en esa ejecución, seleccione el botón de puntos suspensivos ( … ) para esa ejecución y seleccione Mostrar la ejecución.
Por ejemplo, este es el estado paso a paso de una ejecución después de que se haya actualizado el flujo de trabajo de ejemplo con la acción Respuesta.
Para detener la sesión de depuración, en el menú Ejecutar, seleccione Detener depuración (Mayús+F5).
Búsqueda de nombres de dominio para el acceso al firewall
Antes de implementar y ejecutar el flujo de trabajo de la aplicación lógica en Azure Portal, si su entorno tiene estrictos requisitos de red o firewalls que limitan el tráfico, debe configurar los permisos para las conexiones de desencadenador o acción que existan en el flujo de trabajo.
Para buscar los nombres de dominio completos (FQDN) de estas conexiones, siga estos pasos:
En el proyecto de la aplicación lógica, abra el archivo connections.json, que se crea después de agregar el primer desencadenador o acción basado en conexión al flujo de trabajo, y busque el objeto
managedApiConnections
.Para cada conexión que ha creado, copie y guarde el valor de la propiedad
connectionRuntimeUrl
en un lugar seguro para que pueda configurar el firewall con esta información.Este archivo connections.json de ejemplo contiene dos conexiones, una conexión AS2 y una conexión de Office 365, con estos valores de
connectionRuntimeUrl
:AS2:
"connectionRuntimeUrl": https://9d51d1ffc9f77572.00.common.logic-{Azure-region}.azure-apihub.net/apim/as2/11d3fec26c87435a80737460c85f42ba
Office 365:
"connectionRuntimeUrl": https://9d51d1ffc9f77572.00.common.logic-{Azure-region}.azure-apihub.net/apim/office365/668073340efe481192096ac27e7d467f
{ "managedApiConnections": { "as2": { "api": { "id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{Azure-region}/managedApis/as2" }, "connection": { "id": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{Azure-resource-group}/providers/Microsoft.Web/connections/{connection-resource-name}" }, "connectionRuntimeUrl": https://9d51d1ffc9f77572.00.common.logic-{Azure-region}.azure-apihub.net/apim/as2/11d3fec26c87435a80737460c85f42ba, "authentication": { "type":"ManagedServiceIdentity" } }, "office365": { "api": { "id": "/subscriptions/{Azure-subscription-ID}/providers/Microsoft.Web/locations/{Azure-region}/managedApis/office365" }, "connection": { "id": "/subscriptions/{Azure-subscription-ID}/resourceGroups/{Azure-resource-group}/providers/Microsoft.Web/connections/{connection-resource-name}" }, "connectionRuntimeUrl": https://9d51d1ffc9f77572.00.common.logic-{Azure-region}.azure-apihub.net/apim/office365/668073340efe481192096ac27e7d467f, "authentication": { "type":"ManagedServiceIdentity" } } } }
Implementar en Azure
Desde Visual Studio Code, puede publicar directamente el proyecto en Azure, que implementa la aplicación lógica con el tipo de recurso Logic Apps (estándar). La aplicación lógica se puede publicar como un nuevo recurso, lo que crea automáticamente los recursos necesarios, como una cuenta de Azure Storage, similar a los requisitos de la aplicación de funciones. O bien, puede publicar la aplicación lógica en un recurso Logic Apps (estándar) implementado anteriormente, que sobrescribe dicha aplicación lógica.
La implementación para el tipo de recurso Logic Apps (estándar) requiere un plan de hospedaje y un plan de tarifa, que debe seleccionar durante la implementación. Para más información, revise Planes de hospedaje y planes de tarifa.
Publicación en un nuevo recurso Logic Apps (estándar)
En la barra de actividad de Visual Studio Code, seleccione el icono de Azure.
En la barra de herramientas del panel Azure: Logic Apps (estándar) , seleccione Deploy to Logic App (Implementar en la aplicación lógica).
Si se le solicita, seleccione la suscripción de Azure que se va a usar para la implementación de la aplicación lógica.
En la lista que abre Visual Studio Code, seleccione una de estas opciones:
- Create new Logic App (Standard) in Azure (Crear nueva instancia de Logic Apps [estándar] en Azure) (rápido)
- Create new Logic App (Standard) in Azure Advanced (Crear nueva instancia de Logic Apps [estándar] en Azure avanzado)
- Un recurso Logic Apps (estándar) implementado previamente, si existe.
Este ejemplo continúa con Create new Logic App (Standard) in Azure Advanced (Crear nueva instancia de Logic Apps [estándar] en Azure avanzado).
Para crear el nuevo recurso Logic Apps (estándar) , siga estos pasos:
Proporcione un nombre único globalmente para la nueva aplicación lógica, que es el nombre que se usará para el recurso Logic Apps (estándar) . En este ejemplo se usa
Fabrikam-Workflows-App
.Seleccione un plan de hospedaje para la nueva aplicación lógica. Cree un nombre para el plan o seleccione un plan existente (solo planes de App Service basados en Windows). En este ejemplo se selecciona Crear nuevo plan de App Service.
Proporcione un nombre para el plan de hospedaje y, a continuación, seleccione un plan de tarifa para el plan seleccionado.
Para más información, revise Planes de hospedaje y planes de tarifa.
Para obtener un rendimiento óptimo, seleccione el mismo grupo de recursos que el proyecto para la implementación.
Nota
Aunque puede crear o usar un grupo de recursos diferente, esto podría afectar al rendimiento. Si crea o elige otro grupo de recursos, pero cancela después de que aparezca el mensaje de confirmación, la implementación también se cancelará.
Para flujos de trabajo con estado, seleccione Crear una nueva cuenta de almacenamiento o una cuenta de almacenamiento existente.
Si la configuración de la creación e implementación de la aplicación lógica admite el uso de Application Insights, puede habilitar opcionalmente el registro de diagnóstico y el seguimiento para la aplicación lógica. Puede hacerlo al implementar la aplicación lógica desde Visual Studio Code o después de la implementación. Debe tener una instancia de Application Insights, pero puede crear este recurso con antelación, al implementar la aplicación lógica o después de la implementación.
Para habilitar el registro y el seguimiento ahora, siga estos pasos:
Seleccione un recurso de Application Insights existente o Cree un nuevo recurso de Application Insights.
En Azure Portal, vaya al recurso de Application Insights.
En el menú del recurso, seleccione Información general. Busque y copie el valor de Clave de instrumentación.
En Visual Studio Code, en la carpeta raíz del proyecto, abra el archivo local.settings.json.
En el objeto
Values
, agregue la propiedadAPPINSIGHTS_INSTRUMENTATIONKEY
y establezca el valor en la clave de instrumentación, por ejemplo:{ "IsEncrypted": false, "Values": { "AzureWebJobsStorage": "UseDevelopmentStorage=true", "FUNCTIONS_WORKER_RUNTIME": "node", "APPINSIGHTS_INSTRUMENTATIONKEY": <instrumentation-key> } }
Sugerencia
Puede comprobar si los nombres de los desencadenadores y las acciones aparecen correctamente en la instancia de Application Insights.
En Azure Portal, vaya al recurso de Application Insights.
En el menú de recursos, en Investigar, seleccione Asignación de aplicaciones.
Revise los nombres de las operaciones que aparecen en el mapa.
Algunas solicitudes entrantes de los desencadenadores integrados pueden aparecer como duplicadas en la asignación de aplicaciones. En lugar de usar el formato
WorkflowName.ActionName
, estos duplicados usan el nombre del flujo de trabajo como el nombre de la operación y se originan desde el host de Azure Functions.A continuación, si quiere puede ajustar el nivel de gravedad de los datos de seguimiento que la aplicación lógica recopila y envía a la instancia de Application Insights.
Cada vez que se produce un evento relacionado con el flujo de trabajo, como cuando se desencadena un flujo de trabajo o cuando se ejecuta una acción, el tiempo de ejecución emite varios seguimientos. Estos seguimientos cubren la duración del flujo de trabajo e incluyen, entre otros, los siguientes tipos de evento:
- Actividad del servicio, como inicio, detención y errores.
- Actividad de los trabajos y del distribuidor.
- Actividad de flujo de trabajo, como el desencadenador, la acción y la ejecución.
- Actividad de solicitud de almacenamiento, como correcto o error.
- Actividad de solicitud HTTP, como de entrada, salida, correcta y error.
- Todos los seguimientos de desarrollo, como los mensajes de depuración.
Cada tipo de evento se asigna a un nivel de gravedad. Por ejemplo, el nivel
Trace
captura los mensajes más detallados, mientras que el nivelInformation
captura la actividad general en el flujo de trabajo, como cuando la aplicación lógica, el flujo de trabajo, el desencadenador y las acciones se inician y detienen. En esta tabla se describen los niveles de gravedad y sus tipos de seguimiento:Nivel de gravedad Tipo de seguimiento Crítico Registros que describen un error irrecuperable en la aplicación lógica. Depurar Registros que puede usar para la investigación durante el desarrollo, por ejemplo, llamadas HTTP de entrada y salida. Error Registros que indican un error en la ejecución del flujo de trabajo, pero no un error general en la aplicación lógica. Información Registros que realizan el seguimiento de la actividad general en la aplicación lógica o el flujo de trabajo, por ejemplo: - Cuando se inicia y finaliza un desencadenador, una acción o una ejecución.
- Cuando se inicia o finaliza la aplicación lógica.Seguimiento Registros que contienen los mensajes más detallados, por ejemplo, las solicitudes de almacenamiento o la actividad del distribuidor, además de todos los mensajes relacionados con la actividad de ejecución del flujo de trabajo. Advertencia Registros que resaltan un estado anómalo en la aplicación lógica, pero no impiden su ejecución. Para establecer el nivel de gravedad, en el nivel raíz del proyecto, abra el archivo host.json y busque el objeto
logging
. Este objeto controla el filtrado de registros para todos los flujos de trabajo de la aplicación lógica y sigue el diseño de ASP.NET Core para el filtrado de tipo de registro.{ "version": "2.0", "logging": { "applicationInsights": { "samplingExcludedTypes": "Request", "samplingSettings": { "isEnabled": true } } } }
Si el objeto
logging
no contiene un objetologLevel
que incluya la propiedadHost.Triggers.Workflow
, agregue esos elementos. Establezca la propiedad en el nivel de gravedad para el tipo de seguimiento que desee, por ejemplo:{ "version": "2.0", "logging": { "applicationInsights": { "samplingExcludedTypes": "Request", "samplingSettings": { "isEnabled": true } }, "logLevel": { "Host.Triggers.Workflow": "Information" } } }
Cuando haya terminado con los pasos de implementación, Visual Studio Code comienza a crear e implementar los recursos necesarios para publicar la aplicación lógica.
Para revisar y supervisar el proceso de implementación, en el menú Ver, seleccione Salida. En la lista de la barra de herramientas de la ventana Salida, seleccione Azure Logic Apps.
Cuando Visual Studio Code termina de implementar la aplicación lógica en Azure, aparece el siguiente mensaje:
Enhorabuena, la aplicación lógica ahora está activa en Azure y habilitada de manera predeterminada.
Ahora puede obtener información sobre cómo realizar estas tareas:
Administrar la aplicación lógica implementada en Visual Studio Code o mediante Azure Portal.
Habilitar el historial de ejecución para flujos de trabajo sin estado.
Habilitar la vista de supervisión en Azure Portal para una aplicación lógica implementada.
Adición de un flujo de trabajo en blanco al proyecto
Puede tener varios flujos de trabajo en el proyecto de aplicación lógica. Para agregar un flujo de trabajo en blanco al proyecto, siga estos pasos:
En la barra de actividad de Visual Studio Code, seleccione el icono de Azure.
En el panel de Azure, junto a Azure: Logic Apps (estándar) , seleccione Crear flujo de trabajo (icono de Azure Logic Apps).
Seleccione el tipo de flujo de trabajo que desea agregar: Con estado o Sin estado.
Escriba un nombre para el flujo de trabajo.
Cuando haya terminado, aparecerá una nueva carpeta de flujo de trabajo en el proyecto junto con un archivo workflow.json para la definición de flujo de trabajo.
Administración de aplicaciones lógicas implementadas en Visual Studio Code
En Visual Studio Code, puede ver todas las aplicaciones lógicas implementadas en la suscripción a Azure, independientemente de si son del tipo de recurso Logic Apps original o Logic Apps (estándar) , y seleccionar tareas que le ayuden a administrar esas aplicaciones lógicas. Sin embargo, para acceder a ambos tipos de recursos, necesita las extensiones Azure Logic Apps y Azure Logic Apps (estándar) para Visual Studio Code.
En la barra de herramientas izquierda, seleccione el icono de Azure. En el área Azure: Logic Apps (estándar) , expanda su suscripción, que muestra todas las aplicaciones lógicas implementadas para esa suscripción.
Abra la aplicación lógica que desea administrar. En el menú contextual de la aplicación lógica, seleccione la tarea que desea realizar.
Por ejemplo, puede seleccionar tareas como detener, iniciar, reiniciar o eliminar la aplicación lógica implementada. Puede deshabilitar o habilitar un flujo de trabajo mediante Azure Portal.
Nota
Las operaciones detener la aplicación lógica y de eliminar la aplicación lógica afectan a las instancias de flujo de trabajo de maneras diferentes. Para obtener más información, consulte Consideraciones para detener aplicaciones lógicas y Consideraciones para eliminar aplicaciones lógicas.
Para ver todos los flujos de trabajo en la aplicación lógica, expándala y, después, expanda el nodo Flujos de trabajo.
Para ver un flujo de trabajo específico, abra el menú contextual del flujo de trabajo y seleccione Open in Designer (Abrir en el diseñador), que abre el flujo de trabajo en modo de solo lectura.
Para editar el flujo de trabajo, tiene estas opciones:
En Visual Studio Code, abra el archivo workflow.json del proyecto en el diseñador de flujos de trabajo, realice los cambios y vuelva a implementar la aplicación lógica en Azure.
En Azure Portal, abra la aplicación lógica. A continuación, puede abrir, editar y guardar el flujo de trabajo.
Para abrir la aplicación lógica implementada en Azure Portal, abra el menú contextual de la aplicación lógica y seleccione Abrir en el portal.
Azure Portal se abre en el explorador, inicia sesión automáticamente en el portal si ha iniciado sesión en Visual Studio Code y muestra la aplicación lógica.
También puede iniciar sesión por separado en Azure Portal, usar el cuadro de búsqueda del portal para buscar la aplicación lógica y, a continuación, seleccionar la aplicación lógica en la lista de resultados.
Consideraciones para detener aplicaciones lógicas
Detener una aplicación lógica afecta a las instancias de flujo de trabajo de las maneras siguientes:
Azure Logic Apps cancela de inmediato todas las ejecuciones en curso y pendientes.
Azure Logic Apps no crea ni ejecuta nuevas instancias de flujo de trabajo.
Los desencadenadores no se activarán la próxima vez que se cumplan las condiciones. Sin embargo, los estados de los desencadenadores recuerdan los puntos donde se detuvo la aplicación lógica. Por lo tanto, si reinicia la aplicación lógica, los desencadenadores se activan para todos los elementos no procesados desde la última ejecución.
Para evitar que un desencadenador se active para los elementos no procesados desde la última ejecución, borre el estado del desencadenador antes de reiniciar la aplicación lógica:
- En Visual Studio Code, en la barra de herramientas de la izquierda, seleccione el icono Azure.
- En el área Azure: Logic Apps (estándar) , expanda su suscripción, que muestra todas las aplicaciones lógicas implementadas para esa suscripción.
- Expanda la aplicación lógica y, a continuación, expanda el nodo llamado Flujos de trabajo.
- Abra un flujo de trabajo y edite cualquier parte de su desencadenador.
- Guarde los cambios. Este paso restablece el estado actual del desencadenador.
- Repita el procedimiento para cada flujo de trabajo.
- Cuando haya terminado, reinicie la aplicación lógica.
Consideraciones para eliminar aplicaciones lógicas
Eliminar una aplicación lógica afecta a las instancias de flujo de trabajo de las maneras siguientes:
Azure Logic Apps cancela las ejecuciones en curso y pendientes de inmediato, pero no ejecuta tareas de limpieza en el almacenamiento usado por la aplicación.
Azure Logic Apps no crea ni ejecuta nuevas instancias de flujo de trabajo.
Si elimina un flujo de trabajo y, luego, vuelve a crear el mismo flujo de trabajo, el flujo de trabajo recreado no tendrá los mismos metadatos que el flujo de trabajo eliminado. Para actualizar los metadatos, tendrá que volver a guardar cualquier flujo de trabajo que haya llamado al que se ha eliminado. De este modo, el autor de la llamada obtiene la información correcta para el flujo de trabajo recreado. De lo contrario, las llamadas al flujo de trabajo recreado producirán un error
Unauthorized
. Este comportamiento también se aplica a los flujos de trabajo que usan artefactos en cuentas de integración y a flujos de trabajo que llaman a Azure Functions.
Administración de aplicaciones lógicas implementadas en el portal
Después de implementar una aplicación lógica en Azure Portal desde Visual Studio Code, puede ver todas las aplicaciones lógicas implementadas en la suscripción a Azure, independientemente de si son del tipo de recurso Logic Apps original o del tipo de recurso Logic Apps (estándar) . Actualmente, cada tipo de recurso se organiza y administra como categoría independiente en Azure. Para buscar aplicaciones lógicas que tengan el tipo de recurso Logic Apps (estándar) , siga estos pasos:
En el cuadro de búsqueda de Azure Portal, escriba
logic apps
. Cuando aparezca la lista de resultados, en Servicios, seleccione Logic Apps.En el panel Aplicaciones lógicas, seleccione la aplicación lógica que implementó desde Visual Studio Code.
Azure Portal abre la página individual de recursos para la aplicación lógica seleccionada.
Para ver los flujos de trabajo en esta aplicación lógica, en el menú de la aplicación lógica, seleccione Flujos de trabajo.
En el panel Flujos de trabajo se muestran todos los flujos de trabajo de la aplicación lógica actual. En este ejemplo se muestra el flujo de trabajo que creó en Visual Studio Code.
Para ver un flujo de trabajo, en el panel Flujos de trabajo, seleccione ese flujo de trabajo.
Se abre el panel del flujo de trabajo y muestra más información y tareas que puede realizar en ese flujo de trabajo.
Por ejemplo, para ver los pasos del flujo de trabajo, seleccione Diseñador.
El diseñador de flujos de trabajo se abre y muestra el flujo de trabajo que creó en Visual Studio Code. Ahora puede realizar cambios en este flujo de trabajo en Azure Portal.
Adición de otro flujo de trabajo en el portal
A través de Azure Portal, puede agregar flujos de trabajo vacíos a un recurso Logic Apps (estándar) implementado desde Visual Studio Code y compilar esos flujos de trabajo en Azure Portal.
En Azure Portal, seleccione el recurso Logic Apps (estándar) implementado.
En el menú de la aplicación lógica, seleccione Flujos de trabajo. En el panel Flujos de trabajo, seleccione Agregar.
En el panel Nuevo flujo de trabajo, indique el nombre del flujo de trabajo. Seleccione Con estado o Sin estado>Crear.
Una vez que Azure implemente el nuevo flujo de trabajo, que aparece en el panel Flujos de trabajo, seleccione ese flujo de trabajo para que pueda administrar y realizar otras tareas, como abrir el diseñador o la vista de código.
Por ejemplo, al abrir el diseñador para un nuevo flujo de trabajo, se muestra un lienzo en blanco. Ahora puede compilar este flujo de trabajo en Azure Portal.
Habilitación del historial de ejecución para flujos de trabajo sin estado
Para depurar un flujo de trabajo sin estado con más facilidad, puede habilitar el historial de ejecución para ese flujo de trabajo y luego deshabilitar el historial de ejecución cuando haya terminado. Siga estos pasos para Visual Studio Code, o bien, si está trabajando en Azure Portal, consulte Creación de flujos de trabajo basados en un único inquilino en Azure Portal.
En el proyecto de Visual Studio Code, expanda la carpeta llamada workflow-designtime y abra el archivo local.settings.json.
Agregue la propiedad
Workflows.{yourWorkflowName}.operationOptions
y establezca el valor enWithStatelessRunHistory
, por ejemplo:Windows
{ "IsEncrypted": false, "Values": { "AzureWebJobsStorage": "UseDevelopmentStorage=true", "FUNCTIONS_WORKER_RUNTIME": "node", "Workflows.{yourWorkflowName}.OperationOptions": "WithStatelessRunHistory" } }
macOS o Linux
{ "IsEncrypted": false, "Values": { "AzureWebJobsStorage": "DefaultEndpointsProtocol=https;AccountName=fabrikamstorageacct; \ AccountKey=<access-key>;EndpointSuffix=core.windows.net", "FUNCTIONS_WORKER_RUNTIME": "node", "Workflows.{yourWorkflowName}.OperationOptions": "WithStatelessRunHistory" } }
Para deshabilitar el historial de ejecución cuando haya terminado, establezca la propiedad
Workflows.{yourWorkflowName}.OperationOptions
enNone
o elimine la propiedad y su valor.
Habilitación de la vista de supervisión en Azure Portal
Después de implementar un recurso de Logic Apps (estándar) desde Visual Studio Code en Azure, puede revisar cualquier historial de ejecución disponible y los detalles de un flujo de trabajo en ese recurso mediante Azure Portal y la experiencia de Supervisión para ese flujo de trabajo. Sin embargo, en primer lugar, debe habilitar la funcionalidad de vista Supervisión en ese recurso de aplicación lógica.
En Azure Portal, seleccione el recurso Logic Apps (estándar) implementado.
En el menú de ese recurso, en API, seleccione CORS.
En el panel CORS, en Orígenes permitidos, agregue el carácter comodín (*).
Cuando esté listo, en la barra de herramientas de CORS, seleccione Guardar.
Habilitación o apertura de Application Insights después de la implementación
Durante la ejecución del flujo de trabajo, la aplicación lógica emite telemetría junto con otros eventos. Puede usar esta telemetría para obtener una mejor visibilidad de si el flujo de trabajo se ejecuta correctamente y cómo funciona el runtime de Logic Apps de varias maneras. Puede supervisar el flujo de trabajo mediante Application Insights, que proporciona telemetría casi en tiempo real (métricas en directo). Esta funcionalidad puede ayudarle a investigar los errores y problemas de rendimiento con más facilidad si usa estos datos para diagnosticar problemas, configurar alertas y crear gráficos.
Si la configuración de la creación e implementación de la aplicación lógica admite el uso de Application Insights, puede habilitar opcionalmente el registro de diagnóstico y el seguimiento para la aplicación lógica. Puede hacerlo al implementar la aplicación lógica desde Visual Studio Code o después de la implementación. Debe tener una instancia de Application Insights, pero puede crear este recurso con antelación, al implementar la aplicación lógica o después de la implementación.
Para habilitar Application Insights en una aplicación lógica implementada o para revisar los datos de Application Insights si ya está habilitado, siga estos pasos:
En Azure Portal, busque la aplicación lógica implementada.
En el menú de la aplicación lógica, en Configuración, seleccione Application Insights.
Si Application Insights no se ha habilitado, en el panel Application Insights, seleccione Activar Application Insights. Una vez que se actualice el panel, en la parte inferior, seleccione Aplicar.
Si se ha habilitado Application Insights, en el panel Application Insights, seleccione Ver datos de Application Insights.
Después de que se abra Application Insights, puede revisar varias métricas de la aplicación lógica. Para obtener más información, consulte estos temas:
- Azure Logic Apps en ejecución en cualquier ubicación: supervisión con Application Insights: parte 1
- Azure Logic Apps en ejecución en cualquier ubicación: supervisión con Application Insights: parte 2
Eliminación de elementos del diseñador
Para eliminar un elemento del flujo de trabajo del diseñador, siga cualquiera de estos pasos:
Seleccione el elemento, abra el menú contextual del elemento (Mayús+F10) y seleccione Eliminar. Para confirmar, seleccione Aceptar.
Seleccione el elemento y presione la tecla Supr. Para confirmar, seleccione Aceptar.
Seleccione el elemento para que se abra el panel de detalles de ese elemento. En la esquina superior derecha del panel, abra el menú de puntos suspensivos ( ... ) y seleccione Eliminar. Para confirmar, seleccione Aceptar.
Sugerencia
Si no está visible el menú de puntos suspensivos, expanda la ventana de Visual Studio Code el ancho suficiente para que en el panel de detalles se muestre el botón de puntos suspensivos ( ... ) en la esquina superior derecha.
Solución de errores y problemas
El diseñador no se abre
Al intentar abrir el diseñador, aparece este error, Workflow design time could not be started (No se pudo iniciar el tiempo de diseño del flujo de trabajo). Si anteriormente intentó abrir el diseñador y, después, dejó de usarlo o eliminó el proyecto, es posible que el conjunto de extensiones no se descargue correctamente. Para comprobar si esta es la causa del problema, siga estos pasos:
En Visual Studio Code, abra la ventana Salida. En el menú Ver, seleccione Salida.
En la lista de la barra de título de la ventana Salida, seleccione Azure Logic Apps (estándar) para que pueda consultar la salida de la extensión, por ejemplo:
Revise la salida y compruebe si aparece este mensaje de error:
A host error has occurred during startup operation '{operationID}'. System.Private.CoreLib: The file 'C:\Users\{userName}\AppData\Local\Temp\Functions\ ExtensionBundles\Microsoft.Azure.Functions.ExtensionBundle.Workflows\1.1.7\bin\ DurableTask.AzureStorage.dll' already exists. Value cannot be null. (Parameter 'provider') Application is shutting down... Initialization cancellation requested by runtime. Stopping host... Host shutdown completed.
Para resolver este error, elimine la carpeta ExtensionBundles en esta ubicación …\Users{su-nombre-de-usuario}\AppData\Local\Temp\Functions\ExtensionBundles y vuelva a intentar abrir el archivo workflow.json en el diseñador.
Faltan nuevos desencadenadores y acciones en el selector del diseñador para flujos de trabajo creados previamente
Azure Logic Apps de un único inquilino admite acciones integradas para las operaciones de Azure Functions, las operaciones de Liquid y las operaciones de XML, como Validación XML y Transformar XML. Sin embargo, en el caso de las aplicaciones lógicas creadas con anterioridad, es posible que estas acciones no aparezcan en el selector del diseñador para que las pueda seleccionar si Visual Studio Code usa una versión obsoleta del paquete de extensión Microsoft.Azure.Functions.ExtensionBundle.Workflows
.
Además, las acciones y el conector Azure Function Operations (Operaciones de función de Azure) no aparecen en el selector del diseñador a menos que haya habilitado o seleccionado Use connectors from Azure (Usar conectores de Azure) al crear la aplicación lógica. Si no ha habilitado los conectores implementados por Azure en el momento de la creación de la aplicación, puede habilitarlos desde el proyecto en Visual Studio Code. Abra el menú contextual workflow.json y seleccione Use connectors from Azure (Usar conectores de Azure).
Para corregir el paquete obsoleto, siga estos pasos a fin de eliminar el paquete obsoleto, lo que hace que Visual Studio Code actualice automáticamente el paquete de extensión a la versión más reciente.
Nota
Esta solución solo se aplica a las aplicaciones lógicas que se crean e implementan con Visual Studio Code con la extensión Azure Logic Apps (estándar), no a las aplicaciones lógicas que se han creado con Azure Portal. Vea Faltan desencadenadores y acciones en el diseñador en Azure Portal.
Guarde cualquier trabajo que no quiera perder y cierre Visual Studio.
En el equipo, busque la carpeta siguiente, que contiene las carpetas con versión para el paquete existente:
...\Users\{your-username}\.azure-functions-core-tools\Functions\ExtensionBundles\Microsoft.Azure.Functions.ExtensionBundle.Workflows
Elimine la carpeta de la versión del paquete anterior; por ejemplo, si tiene una carpeta para la versión 1.1.3, elimine esa carpeta.
Ahora, busque la carpeta siguiente, que contiene las carpetas con versión para el paquete NuGet necesario:
...\Users\{your-username}\.nuget\packages\microsoft.azure.workflows.webjobs.extension
Elimine la carpeta de la versión del paquete anterior.
Vuelva a abrir Visual Studio Code, el proyecto y el archivo workflow.json en el diseñador.
Los desencadenadores y las acciones que faltan ahora aparecen en el diseñador.
"400 Solicitud incorrecta" aparece en un desencadenador o una acción
Cuando se produce un error en una ejecución y se inspecciona la ejecución en la vista de supervisión, este error puede aparecer en un desencadenador o una acción que tienen un nombre más largo, lo que hace que el identificador uniforme de recursos (URI) subyacente supere el límite de caracteres predeterminado.
Para resolver este problema y ajustar el URI más largo, edite las claves del Registro UrlSegmentMaxCount
y UrlSegmentMaxLength
en el equipo siguiendo estos pasos. Estos valores predeterminados de la clave se describen en el tema Configuración del Registro de Http.sys para Windows.
Importante
Antes de empezar, asegúrese de guardar el trabajo. Esta solución requiere que reinicie el equipo una vez que haya terminado para que los cambios surtan efecto.
En el equipo, abra la ventana Ejecutar y ejecute el comando
regedit
, que abre el Editor del Registro.En el cuadro Control de cuentas de usuario, seleccione Sí para permitir los cambios en el equipo.
En el panel izquierdo, en Equipo, expanda los nodos a lo largo de la ruta de acceso HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters y, a continuación, seleccione Parámetros.
En el panel derecho, busque las claves del Registro
UrlSegmentMaxCount
yUrlSegmentMaxLength
.Aumente estos valores de clave lo suficiente para que los identificadores URI puedan contener los nombres que desea utilizar. Si estas claves no existen, agréguelas a la carpeta Parámetros siguiendo estos pasos:
En el menú contextual Parámetros, seleccione Nuevo>Valor de DWORD (32 bits) .
En el cuadro de edición que aparece, escriba
UrlSegmentMaxCount
como el nuevo nombre de la clave.Abra el menú contextual de la nueva clave y seleccione Modificar.
En el cuadro Editar cadena que aparece, escriba el valor de clave de Información del valor que desee en formato hexadecimal o decimal. Por ejemplo,
400
en formato hexadecimal es equivalente a1024
en formato decimal.Para agregar el valor de clave
UrlSegmentMaxLength
, repita estos pasos.
Después de aumentar o agregar estos valores de clave, el Editor del Registro presenta un aspecto similar al de este ejemplo:
Cuando haya terminado, reinicie el equipo para que los cambios surtan efecto.
La sesión de depuración no se inicia
Al intentar iniciar una sesión de depuración, aparece el error "Error exists after running preLaunchTask 'generateDebugSymbols'" (Aparece un error al ejecutar preLaunchTask 'generateDebugSymbols). Para resolver este problema, edite el archivo tasks.json del proyecto para omitir la generación de símbolos.
En el proyecto, expanda la carpeta llamada .vscode y abra el archivo tasks.json.
En la siguiente tarea, elimine la línea,
"dependsOn: "generateDebugSymbols"
, junto con la coma del final de la línea anterior, por ejemplo:Antes:
{ "type": "func", "command": "host start", "problemMatcher": "$func-watch", "isBackground": true, "dependsOn": "generateDebugSymbols" }
Después:
{ "type": "func", "command": "host start", "problemMatcher": "$func-watch", "isBackground": true }
Pasos siguientes
Nos gustaría conocer sus experiencias con la extensión Azure Logic Apps (estándar).
- En caso de errores o problemas, dirija los problemas a GitHub.
- Si tiene preguntas, solicitudes, ideas y comentarios, use este formulario de comentarios.