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.
Pode atualizar estes valores para uma subscrição existente no separador Funcionalidades da página Tópico de Grelha de Eventos .
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.