Adicionar mensagens a uma fila do Armazenamento do Azure usando o 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. 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. Use o contêiner do Armazenamento do Azure para exibir as mensagens em fila que sua função cria.

Pré-requisitos

Para concluir este guia de início rápido:

Adicionar uma associação de saída

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. Essa associação permite escrever o mínimo possível de código para criar uma mensagem em uma fila. 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. O Azure Functions runtime e a associação de saída da fila cuidam dessas tarefas para você.

  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. Para abrir a página, pesquise e selecione Aplicativo de Funções. Em seguida, selecione seu aplicativo de funções.

  2. Selecione seu aplicativo de funções e depois a função que você criou no guia de início rápido anterior.

  3. Selecione Integração e escolha + Adicionar saída.

    Create an output binding for your function.

  4. Selecione o tipo de associação Armazenamento de Filas do Azure e adicione as configurações conforme especificado na tabela após esta captura de tela:

    Add a Queue storage output binding to a function in the Azure portal.

    Configuração Valor sugerido Descrição
    Nome do parâmetro de mensagem outputQueueItem O nome do parâmetro de associação de saída.
    Nome da fila outqueue Nome da fila à qual se conectar em sua conta de armazenamento.
    Conexão da conta de armazenamento AzureWebJobsStorage 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.
  5. Clique em OK para adicionar a associação.

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.

Adicionar o código que usa a associação de saída

Nesta seção, você adiciona o código que grava uma mensagem na fila de saída. A mensagem inclui o valor que é passado para o gatilho HTTP na cadeia de consulta. Por exemplo, se a cadeia de consulta incluir name=Azure, a mensagem da fila será Nome transmitido para a função: Azure.

  1. Na sua função, selecione Codificar + Testar para exibir o código de função no editor.

  2. Atualize o código de função, dependendo da linguagem de programação de sua função:

    Adicione um parâmetro outputQueueItem à assinatura do método, conforme mostrado no exemplo a seguir.

    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.

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

Testar a função

  1. Depois que as alterações de código forem salvas, selecione Testar.

  2. Confirme se o teste corresponde à imagem abaixo e selecione Executar.

    Test the queue storage binding in the Azure portal.

    Observe que o Corpo da solicitação contém o valor de nameAzure. Esse valor aparece na mensagem da fila que é criada quando a função é invocada.

    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. O método de navegador é mostrado no guia de início rápido anterior.

  3. Confira os logs para verificar se a função foi bem-sucedida.

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. Você usará a conta de armazenamento para verificar se a fila e uma mensagem nela foram criadas.

Localizar a conta de armazenamento conectada ao AzureWebJobsStorage

  1. Navegue até o aplicativo de funções e selecione Configuração.

  2. Em Configurações do aplicativo, selecione AzureWebJobsStorage.

    Screenshot shows the Configuration page with AzureWebJobsStorage selected.

  3. Localize e anote o nome da conta.

    Locate the storage account connected to AzureWebJobsStorage.

Examinar a fila de saída

  1. No grupo de recursos do aplicativo de funções, selecione a conta de armazenamento sendo usada para este início rápido.

  2. Em Serviço Fila, selecione Filas e selecione a fila denominada 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. 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.

  3. Execute a função novamente e você verá uma nova mensagem exibida na fila.

Limpar os recursos

Outros inícios rápidos nessa coleção aproveitam esse início rápido. Se você planeja trabalhar com guias de início rápido subsequentes, tutoriais ou com qualquer serviço criado por você nesse início rápido, não limpe os recursos.

Os Recursos no Azure se referem a aplicativos de funções, funções, contas de armazenamento e assim por diante. Eles são agrupados em grupos de recursos e você pode excluir tudo junto ao excluir o grupo.

Você criou recursos para concluir esses guias de início rápido. Esses recursos podem ser cobrados, dependendo do status da sua conta e do preço do serviço. Caso não precise mais dos recursos, é possível excluí-los desta maneira:

  1. No portal do Azure, vá até a página Grupo de recursos.

    Para acessar essa página por meio da página de aplicativo de funções, selecione a guia Visão geral e o link em Grupo de recursos.

    Screenshot that shows select the resource group to delete from the function app page.

    Para acessar essa página no painel, selecione Grupos de recursos, depois o grupo de recursos usado para este artigo.

  2. Na página Grupo de recursos, examine a lista de recursos incluídos e verifique se eles são aqueles que deseja excluir.

  3. Selecione Excluir grupo de recursos e siga as instruções.

    A exclusão pode levar alguns minutos. Ao ser concluída, uma notificação será exibida por alguns segundos. Também é possível selecionar o ícone de sino na parte superior da página para exibir a notificação.

Próximas etapas

Neste guia de início rápido, você adicionou uma associação de saída a uma função existente. Para obter mais informações sobre associação a Armazenamento de Filas, consulte Associações de fila do Armazenamento do Azure Functions.