Crear una función desencadenada por Azure Queue Storage

Obtenga información sobre cómo crear una función que se desencadena cuando se envían mensajes a una cola de Azure Storage.

Nota:

La edición en el portal solo se admite para las funciones JavaScript, PowerShell y Script de C#. La edición en el portal de Python solo se admite cuando se ejecuta en el plan de consumo. Siempre que sea posible, debe desarrollar las funciones localmente.

Para más información sobre las limitaciones del código de función de edición en Azure Portal, consulte Limitaciones de desarrollo en Azure Portal.

Requisitos previos

  • Suscripción a Azure. Si no tiene una, cree una cuenta gratuita antes de empezar.

Creación de una Function App de Azure

  1. En el menú o la página Inicio de Azure Portal, seleccione Crear un recurso.

  2. En la página Nuevo, seleccione Compute>Function App.

  3. En Seleccionar una opción de hospedaje, seleccione Consumo>Seleccione para crear la aplicación en el plan de consumo predeterminado. En esta opción de hospedaje sin servidor, solo paga por el tiempo durante el cual se ejecutan las funciones. El plan Premium también ofrece escalado dinámico. Si ejecuta un plan de App Service, debe administrar el escalado de la aplicación de función.

  4. En la página Básico, utilice la configuración de la aplicación de funciones como se especifica en la tabla siguiente:

    Configuración Valor sugerido Descripción
    Suscripción Su suscripción Suscripción en la que creará la nueva aplicación de funciones.
    Grupo de recursos myResourceGroup Nombre del nuevo grupo de recursos en el que crea la aplicación de funciones. Debe crear un nuevo grupo de recursos, ya que existen limitaciones conocidas a la hora de crear nuevas aplicaciones de funciones en un grupo de recursos existente.
    Nombre de la aplicación de función Nombre único globalmente Nombre que identifica la nueva Function App. Los caracteres válidos son a-z (no distingue mayúsculas de minúsculas), 0-9 y -.
    Pila en tiempo de ejecución Lenguaje preferido Elija un tiempo de ejecución que admita su lenguaje de programación de funciones preferido. La edición en el portal solo está disponible para JavaScript, PowerShell, Python, TypeScript y el script de C#. Las funciones de la biblioteca de clases de C# y Java deben estar desarrolladas en el entorno local.
    Versión Número de la versión Elija la versión del entorno de ejecución instalado.
    Región Región preferida Seleccione una región próxima a usted o a otros servicios a los que accedan las funciones.
    Sistema operativo Windows Se preselecciona un sistema operativo en función de la selección de pila en tiempo de ejecución, pero es posible cambiar esta configuración si fuera necesario. La edición en el portal solo se admite en Windows.
  5. Acepte las opciones predeterminadas en las pestañas restantes, incluido el comportamiento predeterminado para crear una nueva cuenta de almacenamiento en la pestaña Almacenamiento y una nueva instancia de Application Insights en la pestaña Supervisión. También puede optar por usar una cuenta de almacenamiento existente o una instancia de Application Insights.

  6. Seleccione Revisar y crear para revisar la configuración de la aplicación que ha elegido y, después, seleccione Crear para aprovisionar e implementar la aplicación de funciones.

  7. Seleccione el icono Notificaciones de la esquina superior derecha del portal y observe el mensaje Implementación correcta.

  8. Seleccione Ir al recurso para ver la nueva aplicación de función. También puede seleccionar Anclar al panel. Dicho anclaje facilita la vuelta a este recurso de aplicación de función desde el panel.

    Captura de pantalla de la notificación de implementación.

La aplicación de funciones se creó correctamente.

Después, cree una función en la nueva Function App.

Creación de una función desencadenada por el servicio Queue

  1. En la aplicación de funciones, seleccione Información general y, después, seleccione + Crear en Funciones.

  2. En Seleccione una plantilla, desplácese hacia abajo y elija la plantilla Desencadenador de Azure Queue Storage.

  3. En Detalles de plantilla, configure el nuevo desencadenador con los valores especificados en esta tabla y luego seleccione Crear:

    Configuración Valor sugerido Description
    Nombre Único en la Function App Nombre de la función desencadenada por la cola.
    Nombre de la cola myqueue-items Nombre de la cola a la que se va a conectar en la cuenta de almacenamiento.
    Conexión de la cuenta de almacenamiento AzureWebJobsStorage Puede usar la conexión de cuenta de almacenamiento que ya usa la Function App o crear una nueva.

    Azure crea la función desencadenada de Queue Storage en función de los valores proporcionados

Después, conéctese a su cuenta de Azure Storage y cree la cola de almacenamiento myqueue-items.

Creación de la cola

  1. En la función, en la página Información general, seleccione el grupo de recursos.

    Seleccione el grupo de recursos de Azure Portal.

  2. Busque y seleccione la cuenta de almacenamiento del grupo de recursos.

    Acceda a la cuenta de almacenamiento.

  3. Elija Colas y, a continuación, elija + Cola.

    Agregue una cola a la cuenta de almacenamiento en Azure Portal.

  4. En el campo Nombre, escriba myqueue-items y seleccione Crear.

    Asigne un nombre al contenedor de Queue Storage.

Ahora que tiene una cola de almacenamiento, puede probar la función. Para ello, agregue un mensaje a la cola.

Prueba de la función

  1. De nuevo en Azure Portal, vaya a la función. Expanda Registros en la parte inferior de la página y asegúrese de que el streaming de registros no está en pausa.

    Expanda el inicio de sesión en Azure Portal.

  2. En una ventana del explorador independiente, vaya al grupo de recursos de Azure Portal y seleccione la cuenta de almacenamiento.

  3. Seleccione Colas y, a continuación, el contenedor myqueue-items.

    Vaya a la cola myqueue-items en Azure Portal.

  4. Seleccione Agregar mensaje y escriba "¡Hola mundo!" en el mensaje de texto. Seleccione Aceptar.

    Captura de pantalla que muestra el botón Agregar mensaje seleccionado y el campo Texto del mensaje resaltado.

  5. Espere unos segundos y, después, vuelva a los registros de función para comprobar que se ha leído el mensaje nuevo de la cola.

    Vea el mensaje en los registros.

  6. En Storage Queue, seleccione Actualizar y verifique que el mensaje se haya procesado y ya no esté en la cola.

Limpieza de recursos

Otras guías de inicio rápido de esta colección se basan en los valores de esta. Si tiene previsto trabajar con los siguientes inicios rápidos, tutoriales o con cualquiera de los servicios que haya creado en este inicio rápido, no elimine los recursos.

En Azure, los recursos son aplicaciones de función, funciones o cuentas de almacenamiento, entre otros. Se agrupan en grupos de recursos y se puede eliminar todo el contenido de un grupo si este se elimina.

Para completar estas guías de inicio rápido, ha creado varios recursos. Se le podría facturar por el consumo de estos recursos en función del estado de la cuenta y los precios de los servicios. Si ya no necesita los recursos, aquí se indica cómo eliminarlos:

  1. En Azure Portal, vaya a la página Grupo de recursos.

    Para llegar a esa página desde la página de aplicación de funciones, seleccione la pestaña Información general y el vínculo situado bajo Grupo de recursos.

    Captura de pantalla que muestra la selección del grupo de recursos que se va a eliminar de la página de la aplicación de funciones.

    Para llegar a esa página desde el panel, seleccione Grupos de recursos y, después, seleccione el grupo que ha utilizado para este artículo.

  2. En la página Grupo de recursos, revise la lista de recursos incluidos y compruebe que son los que desea eliminar.

  3. Seleccione Eliminar grupo de recursos y siga las instrucciones.

    La eliminación puede tardar un par de minutos. Cuando termine, aparece una notificación durante unos segundos. También puede seleccionar el icono de campana en la parte superior de la página para ver la notificación.

Pasos siguientes

Ha creado una función que se ejecuta cuando se agrega un mensaje a una cola de almacenamiento. Para obtener más información sobre los desencadenadores de Queue Storage, vea Enlaces de colas de Storage en Azure Functions.

Ahora que ha creado su primera función, vamos a agregar un enlace de salida a la función que escribe un mensaje en otra cola.