Creación de su primera función en Azure PortalCreate your first function in the Azure portal

Azure Functions permite ejecutar el código en un entorno sin servidor y sin necesidad de crear una máquina virtual (VM) ni publicar una aplicación web.Azure Functions lets you run your code in a serverless environment without having to first create a virtual machine (VM) or publish a web application. En este artículo, aprenderá a usar Azure Functions para crear una función de desencadenador de HTTP "Hola mundo" en Azure Portal.In this article, you learn how to use Azure Functions to create a "hello world" HTTP trigger function in the Azure portal.

Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.If you don't have an Azure subscription, create a free account before you begin.

Si es desarrollador de C#, debe considerar la creación de la primera función en Visual Studio 2019 en lugar de en el portal.If you're a C# developer, consider creating your first function in Visual Studio 2019 instead of in the portal.

Inicio de sesión en AzureSign in to Azure

Inicie sesión en Azure Portal con su cuenta de Azure.Sign in to the Azure portal with your Azure account.

Creación de una aplicación de funciónCreate a function app

Debe tener una Function App para hospedar la ejecución de las funciones.You must have a function app to host the execution of your functions. Una aplicación de función permite agrupar funciones como una unidad lógica para facilitar la administración, la implementación, el escalado y el uso compartido de recursos.A function app lets you group functions as a logical unit for easier management, deployment, scaling, and sharing of resources.

  1. En el menú de Azure Portal o en la página Principal, seleccione Crear un recurso.From the Azure portal menu or the Home page, select Create a resource.

  2. En la página Nuevo, seleccione Compute > Function App.In the New page, select Compute > Function App.

  3. En la página Básico, utilice la configuración de la aplicación de funciones que se especifica en la tabla siguiente.On the Basics page, use the function app settings as specified in the following table.

    ConfiguraciónSetting Valor sugeridoSuggested value DescripciónDescription
    SuscripciónSubscription Su suscripciónYour subscription Suscripción en la que se creará esta nueva aplicación de función.The subscription under which this new function app is created.
    Grupo de recursosResource Group myResourceGroupmyResourceGroup Nombre para el nuevo grupo de recursos en el que se va a crear la Function App.Name for the new resource group in which to create your function app.
    Nombre de la aplicación de funciónFunction App name Nombre único globalmenteGlobally unique name Nombre que identifica la nueva Function App.Name that identifies your new function app. Los caracteres válidos son a-z (no distingue mayúsculas de minúsculas), 0-9 y -.Valid characters are a-z (case insensitive), 0-9, and -.
    PublicarPublish CódigoCode Opción para publicar archivos de código o un contenedor de Docker.Option to publish code files or a Docker container.
    Pila en tiempo de ejecuciónRuntime stack Lenguaje preferidoPreferred language Elija un tiempo de ejecución que admita su lenguaje de programación de funciones preferido.Choose a runtime that supports your favorite function programming language. Elija .NET Core para las funciones de C# y F#.Choose .NET Core for C# and F# functions.
    VersiónVersion Número de la versiónVersion number Elija la versión del entorno de ejecución instalado.Choose the version of your installed runtime.
    RegiónRegion Región preferidaPreferred region Elija una región cerca de usted o cerca de otros servicios a los que tendrán acceso las funciones.Choose a region near you or near other services your functions access.

    Aspectos básicos

  4. Seleccione Siguiente: Hospedaje.Select Next : Hosting. En la página Hospedaje, escriba la siguiente configuración.On the Hosting page, enter the following settings.

    ConfiguraciónSetting Valor sugeridoSuggested value DescripciónDescription
    Cuenta de almacenamientoStorage account Nombre único globalmenteGlobally unique name Cree una cuenta de almacenamiento que use la aplicación de función.Create a storage account used by your function app. Los nombres de las cuentas de almacenamiento deben tener entre 3 y 24 caracteres y solo pueden incluir números y letras en minúscula.Storage account names must be between 3 and 24 characters in length and can contain numbers and lowercase letters only. También puede usar una cuenta existente que debe cumplir los requisitos de la cuenta de almacenamiento.You can also use an existing account, which must meet the storage account requirements.
    Sistema operativoOperating system Sistema operativo preferidoPreferred operating system Se preselecciona un sistema operativo en función de la selección de pila en tiempo de ejecución, pero puede cambiar esta configuración si es necesario.An operating system is pre-selected for you based on your runtime stack selection, but you can change the setting if necessary.
    PlanPlan Consumo (sin servidor)Consumption (Serverless) Plan de hospedaje que define cómo se asignan los recursos a la Function App.Hosting plan that defines how resources are allocated to your function app. En el plan de Consumo predeterminado, los recursos se agregan dinámicamente según lo requieran sus funciones.In the default Consumption plan, resources are added dynamically as required by your functions. En este hospedaje sin servidor, solo paga por el tiempo durante el cual se ejecutan las funciones.In this serverless hosting, you pay only for the time your functions run. Si ejecuta un plan de App Service, debe administrar el escalado de la aplicación de función.When you run in an App Service plan, you must manage the scaling of your function app.

    Hosting

  5. Seleccione Siguiente: Supervisión.Select Next : Monitoring. En la página Supervisión, escriba la siguiente configuración.On the Monitoring page, enter the following settings.

    ConfiguraciónSetting Valor sugeridoSuggested value DescripciónDescription
    Application InsightsApplication Insights Valor predeterminadoDefault Crea un recurso de Application Insights con el mismo nombre de aplicación en la región más cercana que lo admita.Creates an Application Insights resource of the same App name in the nearest supported region. Si expande esta configuración o selecciona Crear nuevo puede cambiar el nombre de Application Insights o elegir otra región de una geografía de Azure en la que quiera almacenar los datos.By expanding this setting or selecting Create new, you can change the Application Insights name or choose a different region in an Azure geography where you want to store your data.

    Supervisión

  6. Seleccione Revisar y crear para revisar las selecciones de configuración de la aplicación.Select Review + create to review the app configuration selections.

  7. En la página Revisar y crear, revise la configuración y, a continuación, seleccione Crear para aprovisionar e implementar la aplicación de función.On the Review + create page, review your settings, and then select Create to provision and deploy the function app.

  8. Seleccione el icono Notificaciones de la esquina superior derecha del portal y observe el mensaje Implementación correcta.Select the Notifications icon in the upper-right corner of the portal and watch for the Deployment succeeded message.

  9. Seleccione Ir al recurso para ver la nueva aplicación de función.Select Go to resource to view your new function app. También puede seleccionar Anclar al panel.You can also select Pin to dashboard. Dicho anclaje facilita la vuelta a este recurso de aplicación de función desde el panel.Pinning makes it easier to return to this function app resource from your dashboard.

    Notificación de implementación

Después, cree una función en la nueva aplicación de funciones.Next, create a function in the new function app.

Creación de una función de desencadenador de HTTPCreate an HTTP trigger function

  1. En el menú de la izquierda de la ventana Funciones, seleccione Funciones y, a continuación, seleccione Agregar en el menú superior.From the left menu of the Functions window, select Functions, then select Add from the top menu.

  2. En la ventana Nueva función, seleccione Desencadenador de HTTP.From the New Function window, select Http trigger.

    Elección de la función de desencadenador de HTTP

  3. En la ventana Nueva función, acepte el nombre predeterminado para la nueva función o escriba un nombre nuevo.In the New Function window, accept the default name for New Function, or enter a new name.

  4. En la lista desplegable Nivel de autorización, elija Anónimo y, a continuación, seleccione Crear función.Choose Anonymous from the Authorization level drop-down list, and then select Create Function.

    Azure crea la función de desencadenador de HTTP.Azure creates the HTTP trigger function. Ahora, puede ejecutar la nueva función mediante el envío de una solicitud HTTP.Now, you can run the new function by sending an HTTP request.

Prueba de la funciónTest the function

  1. En la nueva función de desencadenador de HTTP, seleccione Código y prueba en el menú de la izquierda y, a continuación, seleccione Obtener la dirección URL de la función en el menú superior.In your new HTTP trigger function, select Code + Test from the left menu, then select Get function URL from the top menu.

    Selección de la opción Obtener la dirección URL de la función

  2. En el cuadro de diálogo Obtener la dirección URL de la función, seleccione valor predeterminado en la lista desplegable y, a continuación, seleccione el icono Copiar al Portapapeles.In the Get function URL dialog box, select default from the drop-down list, and then select the Copy to clipboard icon.

    Copiar la dirección URL de la función desde Azure Portal

  3. Pegue la dirección URL de la función en la barra de direcciones de su explorador.Paste the function URL into your browser's address bar. Anexe el valor ?name=<your_name> de la cadena de consulta al final de esta dirección URL y presione Entrar para ejecutar la solicitud.Add the query string value ?name=<your_name> to the end of this URL and press Enter to run the request.

    El ejemplo siguiente muestra la respuesta en el explorador:The following example shows the response in the browser:

    Respuesta de la función en el explorador.

    La dirección URL de la solicitud incluye una clave que, de forma predeterminada, es necesaria para tener acceso a la función a través de HTTP.The request URL includes a key that is required, by default, to access your function over HTTP.

  4. Cuando se ejecuta la función, se escribe información de seguimiento en los registros.When your function runs, trace information is written to the logs. Para ver los resultados del seguimiento, vuelva a la página Código y prueba en el portal y expanda la flecha Registros en la parte inferior de la página.To see the trace output, return to the Code + Test page in the portal and expand the Logs arrow at the bottom of the page.

    Visor de registros de las funciones en Azure Portal.

Limpieza de recursosClean up resources

Otras guías de inicio rápido de esta colección se basan en los valores de esta.Other quickstarts in this collection build upon this quickstart. Si tiene previsto trabajar con las siguientes guías de inicio rápido, tutoriales o con cualquiera de los servicios que haya creado en esta guía de inicio rápido, no elimine los recursos.If you plan to work with subsequent quickstarts, tutorials, or with any of the services you have created in this quickstart, do not clean up the resources.

En Azure, los recursos son aplicaciones de función, funciones o cuentas de almacenamiento, entre otros.Resources in Azure refer to function apps, functions, storage accounts, and so forth. Se agrupan en grupos de recursos y se puede eliminar todo el contenido de un grupo si este se elimina.They're grouped into resource groups, and you can delete everything in a group by deleting the group.

Ha creado recursos para completar estas guías de inicio rápido.You created resources to complete these quickstarts. Se le pueden facturar por estos recursos, dependiendo del estado de la cuentade los y precios de los servicios.You may be billed for these resources, depending on your account status and service pricing. Si ya no necesita los recursos, aquí se indica cómo eliminarlos:If you don't need the resources anymore, here's how to delete them:

  1. En Azure Portal, vaya a la página Grupo de recursos.In the Azure portal, go to the Resource group page.

    Para llegar a esa página desde la página de aplicación de función, seleccione la pestaña Información general y, después, seleccione el vínculo situado bajo Grupo de recursos.To get to that page from the function app page, select the Overview tab and then select the link under Resource group.

    Seleccione el grupo de recursos que se va a eliminar de la página de la aplicación de función.

    Para llegar a esa página desde el panel, seleccione Grupos de recursos y, después, seleccione el grupo que ha utilizado para esta guía de inicio rápido.To get to that page from the dashboard, select Resource groups, and then select the resource group that you used for this quickstart.

  2. En la página Grupo de recursos, revise la lista de recursos incluidos y compruebe que son los que desea eliminar.In the Resource group page, review the list of included resources, and verify that they're the ones you want to delete.

  3. Seleccione Eliminar grupo de recursos y siga las instrucciones.Select Delete resource group, and follow the instructions.

    El proceso de eliminación tardará un par de minutos.Deletion may take a couple of minutes. Cuando termine, aparece una notificación durante unos segundos.When it's done, a notification appears for a few seconds. También puede seleccionar el icono de campana en la parte superior de la página para ver la notificación.You can also select the bell icon at the top of the page to view the notification.

Pasos siguientesNext steps

Ahora que ha creado su primera función, vamos a agregar un enlace de salida a la función que escribe un mensaje en una cola de Storage.Now that you've created your first function, let's add an output binding to the function that writes a message to a Storage queue.