Fila de armazenamento como um manipulador de eventos para os eventos da Grade de Eventos do Azure

Um manipulador de eventos é o local para o qual o evento é enviado. O manipulador usa alguma ação adicional para processar o evento. Vários serviços do Azure são automaticamente configurados para lidar com os eventos e o Armazenamento de Filas do Azure é um deles.

Use o Armazenamento de Filas para receber eventos que precisam efetuar pull. Você pode usar o Armazenamento de Filas quando tem um processo de execução longa que demora muito para responder. Ao enviar eventos para o Armazenamento de Filas, o aplicativo pode receber e processar os eventos de acordo com a própria agenda.

Observação

  • Se não houver regras de firewall ou de rede virtual configuradas para a conta de Armazenamento do Azure, você poderá usar identidades atribuídas pelo usuário e pelo sistema para entregar eventos à conta de Armazenamento do Azure.
  • Se uma regra de firewall ou de rede virtual estiver configurada para a conta de Armazenamento do Azure, você apenas poderá usar a identidade gerenciada atribuída pelo sistema se a opção Permitir que os serviços do Azure na lista de serviços confiáveis acessem a conta de armazenamento também estiver habilitada na conta de armazenamento. Você não poderá usar a identidade gerenciada atribuída pelo usuário mesmo que essa opção esteja habilitada.

Tutoriais

Consulte o tutorial a seguir para ter um exemplo de uso do Armazenamento de filas como um manipulador de eventos.

Title Descrição
Início Rápido: encaminhar eventos personalizados para o Armazenamento de Filas do Azure com a CLI do Azure e a Grade de Eventos Descreve como enviar eventos personalizados para um Armazenamento de filas.

Exemplos de REST (para PUT)

Fila de armazenamento como manipulador de eventos

{
	"properties": 
	{
		"destination": 
		{
			"endpointType": "StorageQueue",
			"properties": 
			{
				"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Storage/storageAccounts/<STORAGE ACCOUNT NAME>",
				"queueName": "<QUEUE NAME>"
			}
		},
		"eventDeliverySchema": "EventGridSchema"
	}
}

Fila de armazenamento como o manipulador de eventos – entrega com identidade gerenciada

{
	"properties": 
	{
		"deliveryWithResourceIdentity": 
		{
			"identity": 
			{
				"type": "SystemAssigned"
			},
			"destination": 
			{
				"endpointType": "StorageQueue",
				"properties": 
				{
					"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Storage/storageAccounts/<STORAGE ACCOUNT NAME>",
					"queueName": "<QUEUE NAME>"
				}
			}
		},
		"eventDeliverySchema": "EventGridSchema"
	}
}

Fila de armazenamento como o manipulador de eventos com um destino de fila de mensagens mortas

{
	"name": "",
	"properties": 
	{
		"destination": 
		{
			"endpointType": "StorageQueue",
			"properties": 
			{
				"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Storage/storageAccounts/<DESTINATION STORAGE>",
				"queueName": "queue1"
			}
		},
		"eventDeliverySchema": "EventGridSchema",
		"deadLetterDestination": 
		{
			"endpointType": "StorageBlob",
			"properties": 
			{
				"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Storage/storageAccounts/<DEADLETTER STORAGE>",
				"blobContainerName": "test"
			}
		}
	}
}

Fila de armazenamento como o manipulador de eventos com um destino de fila de mensagens mortas - identidade gerenciada

{
	"properties": 
	{
		"destination": 
		{
			"endpointType": "StorageQueue",
			"properties": 
			{
				"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Storage/storageAccounts/<DESTINATION STORAGE>",
				"queueName": "queue1"
			}
		},
		"eventDeliverySchema": "EventGridSchema",
		"deadLetterWithResourceIdentity": 
		{
			"identity": 
			{
				"type": "SystemAssigned"
			},
			"deadLetterDestination": 
			{
				"endpointType": "StorageBlob",
				"properties": 
				{
					"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Storage/storageAccounts/<DEADLETTER STORAGE>",
					"blobContainerName": "test"
				}
			}
		}
	}
}

Próximas etapas

Consulte o artigo Manipuladores de eventos para obter uma lista dos manipuladores de eventos compatíveis.