Adicionar mensagens a uma fila do Armazenamento do Azure usando o FunctionsAdd messages to an Azure Storage queue using Functions

No Azure Functions, as associações de entrada e saída fornecem uma maneira declarativa para criar dados a partir de serviços externos disponíveis ao seu código.In Azure Functions, input and output bindings provide a declarative way to make data from external services available to your code. Neste guia de início rápido, é possível usar uma associação de saída para criar uma mensagem em uma fila quando uma função é disparada por uma solicitação HTTP.In this quickstart, you use an output binding to create a message in a queue when a function is triggered by an HTTP request. Use o Gerenciador de Armazenamento do Azure para exibir as mensagens em fila que sua função cria:You use Azure Storage Explorer to view the queue messages that your function creates:

Mensagem da fila mostrada no Gerenciador de Armazenamento

PrerequisitesPrerequisites

Para concluir este guia de início rápido:To complete this quickstart:

Adicionar uma associação de saídaAdd an output binding

Nesta seção, você usa a interface do usuário do portal para adicionar uma associação de saída de armazenamento de filas para a função criada anteriormente.In this section, you use the portal UI to add a queue storage output binding to the function you created earlier. Essa associação tornará possível gravar com o mínimo de código para criar uma mensagem em uma fila.This binding will make it possible to write minimal code to create a message in a queue. Você não precisa escrever códigos para tarefas como abrir uma conexão de armazenamento, criar uma fila ou obter uma referência a uma fila.You don't have to write code for tasks such as opening a storage connection, creating a queue, or getting a reference to a queue. O Azure Functions runtime e a associação de saída da fila cuidam dessas tarefas para você.The Azure Functions runtime and queue output binding take care of those tasks for you.

  1. No portal do Azure, abra a página de aplicativo de funções do aplicativo de funções criado por você em Criar sua primeira função no portal do Azure.In the Azure portal, open the function app page for the function app that you created in Create your first function from the Azure portal. Para fazer isso, selecione Todos os serviços > Aplicativo de funções e depois selecione seu aplicativo de funções.To do this, select All services > Function Apps, and then select your function app.

  2. Selecione a função que você criou no guia de início rápido anterior.Select the function that you created in that earlier quickstart.

  3. Selecione Integrar > Nova Saída > Armazenamento de Filas do Azure.Select Integrate > New Output > Azure Queue Storage.

  4. Clique em Selecionar.Click Select.

    Adicione uma associação de saída de Armazenamento de Filas a uma função no Portal do Azure.

  5. Se você receber uma mensagem de Extensões não instaladas, escolha Instalar para instalar a extensão Associações de armazenamento no aplicativo de funções.If you get an Extensions not installed message, choose Install to install the Storage bindings extension in the function app. Isso pode levar alguns minutos.This may take a minute or two.

    Instalar a extensão de associação do Armazenamento

  6. Em Saída de armazenamento de filas do Azure, use as configurações conforme especificado na tabela após esta captura de tela:Under Azure Queue Storage output, use the settings as specified in the table that follows this screenshot:

    Adicione uma associação de saída de Armazenamento de Filas a uma função no Portal do Azure.

    ConfiguraçãoSetting Valor sugeridoSuggested value DescriçãoDescription
    Nome do parâmetro de mensagemMessage parameter name outputQueueItemoutputQueueItem O nome do parâmetro de associação de saída.The name of the output binding parameter.
    Conexão da conta de armazenamentoStorage account connection AzureWebJobsStorageAzureWebJobsStorage Você pode usar a conexão da conta de armazenamento que já está sendo usada por seu aplicativo de funções ou criar uma nova.You can use the storage account connection already being used by your function app, or create a new one.
    Nome da filaQueue name outqueueoutqueue Nome da fila à qual se conectar em sua conta de armazenamento.The name of the queue to connect to in your Storage account.
  7. Clique em Salvar para adicionar a associação.Click Save to add the binding.

Agora que você tem uma associação de saída definida, você precisa atualizar o código para usar a associação para adicionar mensagens a uma fila.Now that you have an output binding defined, you need to update the code to use the binding to add messages to a queue.

Adicionar o código que usa a associação de saídaAdd code that uses the output binding

Nesta seção, você adiciona o código que grava uma mensagem na fila de saída.In this section, you add code that writes a message to the output queue. A mensagem inclui o valor que é passado para o gatilho HTTP na cadeia de consulta.The message includes the value that is passed to the HTTP trigger in the query string. Por exemplo, se a cadeia de consulta incluir name=Azure, a mensagem da fila será Nome transmitido para a função: Azure.For example, if the query string includes name=Azure, the queue message will be Name passed to the function: Azure.

  1. Selecione sua função para exibir o código de função no editor.Select your function to display the function code in the editor.

  2. Atualize o código de função, dependendo da linguagem de programação de sua função:Update the function code depending on your function language:

    Adicione um parâmetro outputQueueItem à assinatura do método, conforme mostrado no exemplo a seguir.Add an outputQueueItem parameter to the method signature as shown in the following example.

    public static async Task<IActionResult> Run(HttpRequest req,
        ICollector<string> outputQueueItem, ILogger log)
    {
        ...
    }
    

    No corpo da função, imediatamente antes da instrução return, adicione o código que usa o parâmetro para criar uma mensagem da fila.In the body of the function just before the return statement, add code that uses the parameter to create a queue message.

    outputQueueItem.Add("Name passed to the function: " + name);
    
  3. Selecione Salvar para salvar as alterações.Select Save to save changes.

Testar a funçãoTest the function

  1. Depois que as alterações de código forem salvas, selecione Executar.After the code changes are saved, select Run.

    Adicione uma associação de saída de Armazenamento de Filas a uma função no Portal do Azure.

    Observe que o Corpo da solicitação contém o valor de nameAzure.Notice that the Request body contains the name value Azure. Esse valor aparece na mensagem da fila que é criada quando a função é invocada.This value appears in the queue message that is created when the function is invoked.

    Como uma alternativa para selecionar Executar aqui, você pode chamar a função inserindo uma URL em um navegador e especificando o valor name na cadeia de consulta.As an alternative to selecting Run here, you can call the function by entering a URL in a browser and specifying the name value in the query string. O método de navegador é mostrado no guia de início rápido anterior.The browser method is shown in the previous quickstart.

  2. Confira os logs para verificar se a função foi bem-sucedida.Check the logs to make sure that the function succeeded.

Uma nova fila denominada outqueue é criada na sua conta de armazenamento pelo runtime do Functions quando a associação de saída é usada pela primeira vez.A new queue named outqueue is created in your Storage account by the Functions runtime when the output binding is first used. Você usará o Gerenciador de Armazenamento para verificar se a fila e uma mensagem nela foram criadas.You'll use Storage Explorer to verify that the queue and a message in it were created.

Conectar o Gerenciador de Armazenamento à sua contaConnect Storage Explorer to your account

Ignore esta seção caso já tenha instalado o Gerenciador de Armazenamento e o conectado à conta de armazenamento sendo usada neste guia de início rápido.Skip this section if you have already installed Storage Explorer and connected it to the storage account that you're using with this quickstart.

  1. Execute a ferramenta Gerenciador de Armazenamento do Microsoft Azure, selecione o ícone conectar-se à esquerda, escolha Usar um nome e chave de conta de armazenamento e selecione Avançar.Run the Microsoft Azure Storage Explorer tool, select the connect icon on the left, choose Use a storage account name and key, and select Next.

    Execute a ferramenta Gerenciador de Conta de Armazenamento.

  2. No portal do Azure, na página de aplicativo de funções, selecione a função e depois Integrar.In the Azure portal, on the function app page, select your function and then select Integrate.

  3. Selecione a associação de saída do Armazenamento de fila do Azure que você adicionou em uma etapa anterior.Select the Azure Queue storage output binding that you added in an earlier step.

  4. Expanda a seção Documentação na parte inferior da página.Expand the Documentation section at the bottom of the page.

    O portal mostra as credenciais que você pode usar no Gerenciador de Armazenamento para se conectar à conta de armazenamento.The portal shows credentials that you can use in Storage Explorer to connect to the storage account.

    Obtenha as credenciais de conexão da conta de armazenamento.

  5. Copie o valor Nome da Conta do portal e cole-o na caixa Nome da conta no Gerenciador de Armazenamento.Copy the Account Name value from the portal and paste it in the Account name box in Storage Explorer.

  6. Clique no ícone mostrar/ocultar ao lado da Chave de Conta para exibir o valor e depois copie o valor Chave de Conta e cole-o na caixa Chave de conta no Gerenciador de Armazenamento.Click the show/hide icon next to Account Key to display the value, and then copy the Account Key value and paste it in the Account key box in Storage Explorer.

  7. Selecione Próximo > Conectar.Select Next > Connect.

    Cole as credenciais de armazenamento e conecte-se.

Examinar a fila de saídaExamine the output queue

  1. No Gerenciador de Armazenamento, selecione a conta de armazenamento sendo usada para este guia de início rápido.In Storage Explorer, select the storage account that you're using for this quickstart.

  2. Expanda o nó Filas e selecione a fila denominada outqueue.Expand the Queues node, and then select the queue named outqueue.

    A fila contém a mensagem que a associação de saída de fila criou quando você executou a função disparada por HTTP.The queue contains the message that the queue output binding created when you ran the HTTP-triggered function. Se você tiver invocado a função com o valor name padrão do Azure, a mensagem da fila será Nome transmitido à função: Azure.If you invoked the function with the default name value of Azure, the queue message is Name passed to the function: Azure.

    Mensagem da fila mostrada no Gerenciador de Armazenamento

  3. Execute a função novamente e você verá uma nova mensagem exibida na fila.Run the function again, and you'll see a new message appear in the queue.

Limpar os recursosClean up resources

Outros inícios rápidos nessa coleção aproveitam esse início rápido.Other quick starts in this collection build upon this quick start. Se você planeja trabalhar com inícios rápidos subsequentes, tutoriais ou com qualquer serviço criado por você nesse início rápido, não limpe os recursos.If you plan to work with subsequent quick starts, tutorials, or with any of the services you have created in this quick start, do not clean up the resources.

Os Recursos no Azure se referem a aplicativos de funções, funções, contas de armazenamento e assim por diante.Resources in Azure refers to function apps, functions, storage accounts, and so forth. Eles são agrupados em grupos de recursos, e você pode excluir tudo junto ao excluir o grupo.They are grouped into resource groups, and you can delete everything in a group by deleting the group.

Você criou recursos para concluir esses guias de início rápido.You created resources to complete these quickstarts. Você pode ser cobrado por esses recursos, dependendo do status de conta e preços do serviço.You may be billed for these resources, depending on your account status and service pricing. Caso não precise mais dos recursos, é possível excluí-los desta maneira:If you don't need the resources anymore, here's how to delete them:

  1. No portal do Azure, vá até a página Grupo de recursos.In the Azure portal, go to the Resource group page.

    Para ir até essa página a partir da página de aplicativo de funções, selecione a guia Visão geral e depois selecione o link em 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.

    Selecione o grupo de recursos para excluir a partir da página do aplicativo de funções.

    Para ir até essa página a partir do painel, selecione Grupos de recursos e depois selecione o grupo de recursos que você usou para esse guia de início 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. Na página Grupo de recursos, examine a lista de recursos incluídos e verifique se eles são aqueles que deseja excluir.In the Resource group page, review the list of included resources, and verify that they are the ones you want to delete.

  3. Selecione Excluir grupo de recursos e siga as instruções.Select Delete resource group, and follow the instructions.

    A exclusão poderá levar alguns minutos.Deletion may take a couple of minutes. Ao ser concluída, uma notificação será exibida por alguns segundos.When it's done, a notification appears for a few seconds. Também é possível selecionar o ícone de sino na parte superior da página para exibir a notificação.You can also select the bell icon at the top of the page to view the notification.

Próximas etapasNext steps

Neste guia de início rápido, você adicionou uma associação de saída a uma função existente.In this quickstart, you added an output binding to an existing function. Para obter mais informações sobre associação a Armazenamento de Filas, consulte Associações de fila do Armazenamento do Azure Functions.For more information about binding to Queue storage, see Azure Functions Storage queue bindings.