Use uma função como manipulador de eventos para eventos de Grelha de Eventos

Um manipulador de eventos é o local onde o evento é enviado. O manipulador toma uma ação para processar o evento. Vários serviços Azure são configurados automaticamente para lidar com eventos e Funções do Azure é um deles.

Para utilizar uma função em Azure como manipulador para eventos, siga uma destas abordagens:

  • Use o gatilho da grelha de eventos. Especifique a função Azure como o tipo de ponto final. Em seguida, especifique a aplicação de função e a função que irá lidar com eventos.
  • Utilize o gatilho HTTP. Especifique o Web Hook como o tipo de ponto final. Em seguida, especifique o URL para a função que irá lidar com eventos.

Recomendamos que utilize a primeira abordagem (detonador de Grade de Eventos), uma vez que tem as seguintes vantagens sobre a segunda abordagem:

  • A Grelha de Eventos valida automaticamente os gatilhos da Grelha de Eventos. Com os gatilhos GENÉRICOS HTTP, tem de implementar a resposta de validação por si mesmo.
  • A Grelha de Eventos ajusta automaticamente a taxa a que os eventos são entregues a uma função desencadeada por um evento de Grade de Eventos com base na taxa percebida a que a função pode processar eventos. Esta funcionalidade de correspondência de taxa evita erros de entrega que decorrem da incapacidade de uma função para processar eventos, uma vez que a taxa de processamento de eventos da função pode variar ao longo do tempo. Para melhorar a eficiência a uma produção elevada, ative o lote na subscrição do evento. Para obter mais informações, consulte Ativar o lote.

Tutoriais

Título Descrição
Quickstart: Lidar com eventos com função Envia um evento personalizado para uma função de processamento.
Tutorial: automatizar redimensionar imagens carregadas usando a Grade de Eventos Os utilizadores fazem o upload das imagens através da web app para a conta de armazenamento. Quando uma bolha de armazenamento é criada, o Event Grid envia um evento para a aplicação de função, que redimensiona a imagem carregada.
Tutorial: transmitir big data para um armazém de dados Quando o Event Hubs cria um ficheiro Capture, o Event Grid envia um evento para uma aplicação de função. A aplicação recupera o ficheiro Captura e migra dados para um armazém de dados.
Tutorial: Azure Service Bus para Azure Event Grid exemplos de integração O Event Grid envia mensagens de Service Bus tópico para uma aplicação de função e uma aplicação lógica.

Exemplo DE REPOUSO (para PUT)

{
	"properties": 
	{
		"destination": 
		{
			"endpointType": "AzureFunction",
			"properties": 
			{
				"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Web/sites/<FUNCTION APP NAME>/functions/<FUNCTION NAME>",
				"maxEventsPerBatch": 10,
				"preferredBatchSizeInKilobytes": 6400
			}
		},
		"eventDeliverySchema": "EventGridSchema"
	}
}

Ativar o loteamento

Para uma produção mais elevada, ative o lote na subscrição. Se estiver a utilizar o portal do Azure, pode definir o máximo de eventos por lote e o tamanho do lote preferido em bytes de quilo no momento de criar uma subscrição ou após a criação.

Pode configurar as definições do lote utilizando o modelo portal do Azure, PowerShell, CLI ou Resource Manager.

Portal do Azure

No momento em que criar uma subscrição na UI, na página De Subscrição de Eventos Criar , mudar para o separador Funcionalidades Avançadas e definir valores para eventos Max por lote e tamanho do lote preferido em quilobytes.

Enable batching at the time of creating a subscription

Pode atualizar estes valores para uma subscrição existente no separador Funcionalidades da página Tópico de Grelha de Eventos .

Enable batching after creation

Modelo Azure Resource Manager

Pode definir maxEventsPerBatch e preferirBatchSizeInKilobytes num modelo Azure Resource Manager. Para obter mais informações, consulte a referência do modelo de subscrição de eventos Microsoft.EventGrid.

CLI do Azure

Pode utilizar o comando de subscrição de eventos az ouaz eventgrid de subscrição de eventos para configurar definições relacionadas com o lote utilizando os seguintes parâmetros: --max-events-per-batch ou --preferred-batch-size-in-kilobytes.

Azure PowerShell

Pode utilizar o cmdion de subscrição new-AzEventGridS ouUpdate-AzEventGridSubscription para configurar definições relacionadas com o lote utilizando os seguintes parâmetros: -MaxEventsPerBatch ou -PreferredBatchSizeInKiloBytes.

Nota

Quando utiliza o Event Grid Trigger, o serviço De grelha de eventos recolhe o segredo do cliente para a função Azure alvo, e usa-o para entregar eventos à função Azure. Se proteger a sua função azul com uma aplicação Azure Ative Directory, tem de seguir a abordagem genérica do gancho web e utilizar o disparador HTTP.

Passos seguintes

Consulte o artigo dos manipuladores do Evento para obter uma lista de manipuladores de eventos suportados.