Inicio rápido: Creación y administración de flujos de trabajo con la CLI de Azure en Azure Logic Apps

Se aplica a: Azure Logic Apps (consumo)

En este inicio rápido se muestra cómo crear y administrar flujos de trabajo automatizados que se ejecutan en Azure Logic Apps mediante la extensión Azure CLI Logic Apps (az logic). Desde la línea de comandos, puede crear una aplicación lógica de consumo en Azure Logic Apps el archivo JSON en una definición del flujo de trabajo de una aplicación lógica. Después, para administrar la aplicación lógica, es preciso ejecutar operaciones como list, show (get), update y delete también desde la línea de comandos.

Advertencia

Actualmente, la extensión Logic Apps de la CLI de Azure se encuentra en fase experimental y no está incluida en el soporte al cliente. Use esta extensión de la CLI con precaución, sobre todo en entornos de producción.

Este inicio rápido se aplica actualmente solo a los flujos de trabajo de la aplicación lógica de consumo que se ejecutan en Azure Logic Apps multiinquilino. La CLI de Azure no está disponible actualmente para los flujos de trabajo de aplicaciones lógicas estándar que se ejecutan en Azure Logic Apps de un solo inquilino. Para más información, consulte Diferencias de tipo de recurso y host en Azure Logic Apps.

Si no está familiarizado con Azure Logic Apps, aprenda a crear su primer flujo de trabajo de una aplicación lógica de consumo mediante Azure Portal, en Visual Studio y en Visual Studio Code.

Prerequisites

Comprobación de requisitos previos

Antes de empezar valide el entorno:

  • Inicie sesión en Azure Portal y compruebe que la suscripción está activa, para lo que debe ejecutar az login.

  • Compruebe la versión de la CLI de Azure en una ventana de terminal o de comandos, para lo que debe ejecutar az --version. Para saber cuál es la versión más reciente, consulte las notas de la versión más reciente.

    Si no tiene la versión más reciente, actualice la instalación, para lo que debe seguir las instrucciones que encontrará en la guía de instalación del sistema operativo o de la plataforma.

Ejemplo: creación de un grupo de recursos

Si aún no tiene un grupo de recursos para la aplicación lógica, créelo con el comando az group create. Por ejemplo, el siguiente comando crea un grupo de recursos denominado testResourceGroup en la ubicación westus.

az group create --name testResourceGroup --location westus

La salida muestra provisioningState como Succeeded cuando el grupo de recursos se crea correctamente:

<...>
  "name": "testResourceGroup",
  "properties": {
    "provisioningState": "Succeeded"
  },
<...>

Definición del flujo de trabajo

Antes de crear una aplicación lógica o actualizar una aplicación lógica ya existente mediante la CLI de Azure, se necesita una definición del flujo de trabajo de la misma. En Azure Portal, para ver la definición del flujo de trabajo subyacente de una aplicación lógica en formato JSON es preciso cambiar de la vista Diseñador a la vista Código.

Cuando se ejecutan los comandos para crear o actualizar una aplicación lógica, la definición del flujo de trabajo se carga como un parámetro requerido (--definition). La definición del flujo de trabajo se debe crear en forma de archivo JSON que siga el esquema del lenguaje de definición de flujo de trabajo.

Creación de aplicaciones lógicas desde la CLI

Para crear un flujo de trabajo de aplicaciones lógicas desde la CLI de Azure, use el comando az logic workflow create con un archivo JSON para la definición.

az logic workflow create --definition
                         --location
                         --name
                         --resource-group
                         [--access-control]
                         [--endpoints-configuration]
                         [--integration-account]
                         [--integration-service-environment]
                         [--state {Completed, Deleted, Disabled, Enabled, NotSpecified, Suspended}]
                         [--tags]

El comando debe incluir los siguientes parámetros requeridos:

Parámetro Valor Descripción
Definición del flujo de trabajo --definition Archivo JSON con la definición del flujo de trabajo de la aplicación lógica.
Ubicación --location -l La región de Azure en la que se encuentra la aplicación lógica.
Nombre --name -n Nombre de la aplicación lógica. El nombre puede contener solo letras, números, guiones (-), caracteres de subrayado (_), paréntesis (()) y puntos (.). El nombre también debe ser único entre las regiones.
Definición de un nombre de grupo de recursos --resource-group -g Grupo de recursos de Azure en el que desea crear la aplicación lógica. Si no tiene un grupo de recursos para su aplicación lógica, créelo antes de empezar.

También puede incluir parámetros opcionales adicionales para configurar los controles de acceso, los puntos de conexión, la cuenta de integración, el entorno del servicio de integración, el estado y las etiquetas de recursos de la aplicación lógica.

Ejemplo: creación de una aplicación lógica

En este ejemplo, se crea un flujo de trabajo denominado testLogicApp en el grupo de recursos testResourceGroup de la ubicación westus. El archivo JSON testDefinition.json contiene la definición del flujo de trabajo.

az logic workflow create --resource-group "testResourceGroup" --location "westus" --name "testLogicApp" --definition "testDefinition.json"

Cuando el flujo de trabajo se crea correctamente, la CLI muestra el código JSON de la definición del nuevo flujo de trabajo. Si se produce algún error en la creación del flujo de trabajo, consulte la lista de posibles errores.

Actualización de aplicaciones lógicas desde la CLI

Para actualizar el flujo de trabajo de una aplicación lógica desde la CLI de Azure, use el comando az logic workflow create.

Este comando debe incluir los mismos parámetros requeridos que cuando se crea una aplicación lógica. También se pueden agregar los mismos parámetros opcionales que cuando se crea una aplicación lógica.

az logic workflow create --definition
                         --location
                         --name
                         --resource-group
                         [--access-control]
                         [--endpoints-configuration]
                         [--integration-account]
                         [--integration-service-environment]
                         [--state {Completed, Deleted, Disabled, Enabled, NotSpecified, Suspended}]
                         [--tags]

Ejemplo: actualización de una aplicación lógica

En este ejemplo, el flujo de trabajo creado en la sección anterior se actualiza para que use otro archivo de definición de JSON, newTestDefinition.json, y se agregan dos etiquetas de recursos, testTag1 y testTag2, con valores de descripción.

az logic workflow create --resource-group "testResourceGroup" --location "westus" --name "testLogicApp" --definition "newTestDefinition.json" --tags "testTag1=testTagValue1" "testTag2=testTagValue"

Cuando el flujo de trabajo se actualiza correctamente, la CLI muestra la definición del flujo de trabajo actualizada de la aplicación lógica. Si se produce algún error en la actualización, consulte la lista de posibles errores.

Eliminación de aplicaciones lógicas desde la CLI

Para eliminar el flujo de trabajo de una aplicación lógica desde la CLI de Azure, use el comando az logic workflow delete.

El comando debe incluir los siguientes parámetros requeridos:

Parámetro Valor Descripción
Nombre --name -n Nombre de la aplicación lógica.
Definición de un nombre de grupo de recursos -resource-group -g El grupo de recursos en que se encuentra la aplicación lógica.

También puede incluir un parámetro opcional para omitir los mensajes de confirmación, --yes -y.

az logic workflow delete --name
                         --resource-group
                         [--yes]

La CLI le pide que confirme la eliminación de la aplicación lógica. Para omitir el mensaje de confirmación, use el parámetro opcional --yes -y con el comando.

Are you sure you want to perform this operation? (y/n):

Para confirmar la eliminación de una aplicación lógica, enumere las aplicaciones lógicas de la CLI o vea las aplicaciones lógicas en Azure Portal.

Ejemplo: eliminación de una aplicación lógica

En este ejemplo, se elimina el flujo de trabajo creado en una sección anterior.

az logic workflow delete --resource-group "testResourceGroup" --name "testLogicApp"

Después de responder al aviso de confirmación con y, se elimina la aplicación lógica.

Aspectos que se deben tener en cuenta: eliminación de una aplicación lógica

Eliminar una aplicación lógica afecta a las instancias de flujo de trabajo de las maneras siguientes:

  • Azure Logic Apps hace todo lo posible por cancelar todas las ejecuciones en curso y pendientes.

    Incluso con un gran volumen o trabajo pendiente, la mayoría de las ejecuciones se cancelan antes de que finalicen o se inicien. Sin embargo, el proceso de cancelación puede tardar en completarse. Mientras tanto, pueden seleccionarse algunas ejecuciones para su ejecución mientras el entorno en tiempo de ejecución se encarga del proceso de cancelació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. Tiene que volver a guardar todo flujo de trabajo que haya llamado al flujo de trabajo 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 funciones de Azure.

Visualización de aplicaciones lógicas en la CLI

Para obtener un flujo de trabajo de aplicación lógica específica, use el comando az logic workflow show.

az logic workflow show --name
                       --resource-group

Este comando debe incluir los siguientes parámetros requeridos

Parámetro Valor Descripción
Nombre --name -n Nombre de la aplicación lógica.
Nombre de grupo de recursos --resource-group -g Nombre del grupo de recursos en que se encuentra la aplicación lógica.

Ejemplo: obtención de una aplicación lógica

En este ejemplo, la aplicación lógica testLogicApp del grupo de recursos testResourceGroup se devuelve con registros completos para la depuración.

az logic workflow show --resource-group "testResourceGroup" --name "testLogicApp" --debug

Enumeración de aplicaciones lógicas en la CLI

Para enumerar las aplicaciones lógicas por suscripción, use el comando az logic workflow list. Este comando devuelve el código JSON de los flujos de trabajo de sus aplicaciones lógicas.

Puede filtrar los resultados por los siguientes parámetros opcionales:

Parámetro Valor Descripción
Nombre de grupo de recursos --resource-group -g Nombre del grupo de recursos por el que desea filtrar los resultados.
Número de elementos --top Número de elementos que se incluyen en los resultados.
Filtro --filter Tipo de filtro que se usa en la lista. Puede filtrar por estado (State), desencadenador (Trigger) y el identificador del recurso al que se hace referencia (ReferencedResourceId).
az logic workflow list [--filter]
                       [--resource-group]
                       [--top]

Ejemplo: enumeración de aplicaciones lógicas

En este ejemplo, todos los flujos de trabajo habilitados del grupo de recursos testResourceGroup se devuelven en formato de tabla ASCII.

az logic workflow list --resource-group "testResourceGroup" --filter "(State eq 'Enabled')" --output "table"

Errors

El siguiente error indica que la extensión de la CLI de Azure Logic Apps no está instalada. Siga los pasos de los requisitos previos para instalar la extensión de Logic Apps en el equipo.

az: 'logic' is not in the 'az' command group. See 'az --help'. If the command is from an extension, please make sure the corresponding extension is installed. To learn more about extensions, please visit https://learn.microsoft.com/cli/azure/azure-cli-extensions-overview

El siguiente error puede indicar que la ruta de acceso del archivo para cargar la definición del flujo de trabajo no es correcta.

Expecting value: line 1 column 1 (char 0)

Parámetros globales

Puede usar los siguientes parámetros globales opcionales de la CLI de Azure con sus comandos de az logic:

Parámetro Valor Descripción
Formato de salida --output -o Cambia el formato de salida para que no sea el JSON predeterminado.
Mostrar solo errores --only-show-errors Suprime las advertencias y muestra solo los errores.
Verbose --verbose Muestra registros detallados.
Depurar --debug Muestra todos los registros de depuración.
Mensaje de ayuda --help -h Muestra el cuadro de diálogo de ayuda.
Consultar --query Establece una cadena de consulta de JMESPath para la salida JSON.

Pasos siguientes

Para más información sobre la CLI de Azure, consulte la documentación de la CLI de Azure.

Puede encontrar más ejemplos de scripts de la CLI de Logic Apps en el explorador de ejemplos de código de Microsoft.

A continuación, puede crear una aplicación lógica de ejemplo mediante la CLI de Azure con un script de ejemplo y una definición de flujo de trabajo.