Suporte do CloudNative CloudEvent para a biblioteca Azure.Messaging.EventGrid para .NET
Essa biblioteca pode ser usada para habilitar a publicação de CloudNative CloudEvents usando a biblioteca Grade de Eventos do Azure.
Introdução
Instalar o pacote
Instale a biblioteca de clientes do NuGet:
dotnet add package Microsoft.Azure.Messaging.EventGrid.CloudNativeCloudEvents --prerelease
Pré-requisitos
Você deve ter uma assinatura do Azure e um grupo de recursos do Azure com um tópico ou domínio personalizado da Grade de Eventos. Siga este tutorial passo a passo para registrar o provedor de recursos da Grade de Eventos e criar tópicos da Grade de Eventos usando o portal do Azure. Há um tutorial semelhante usando a CLI do Azure.
Autenticar o cliente
Para que a biblioteca de clientes interaja com um tópico ou domínio, você precisará do endpoint
tópico da Grade de Eventos e de um credential
, que pode ser criado usando a chave de acesso do tópico.
Você pode encontrar o ponto de extremidade do tópico da Grade de Eventos no Portal do Azure ou usando o snippet da CLI do Azure abaixo.
az eventgrid topic show --name <your-resource-name> --resource-group <your-resource-group-name> --query "endpoint"
A chave de acesso também pode ser encontrada por meio do portal ou usando o snippet da CLI do Azure abaixo:
az eventgrid topic key list --name <your-resource-name> --resource-group <your-resource-group-name> --query "key1"
Criando e autenticando EventGridPublisherClient
Depois de ter a chave de acesso e o ponto de extremidade do tópico, você poderá criar o cliente do editor da seguinte maneira:
EventGridPublisherClient client = new EventGridPublisherClient(
new Uri("<endpoint>"),
new AzureKeyCredential("<access-key>"));
Principais conceitos
Para obter informações sobre conceitos gerais da Grade de Eventos: Conceitos em Grade de Eventos do Azure.
Para obter informações detalhadas sobre os conceitos da biblioteca de clientes da Grade de Eventos: Biblioteca de Clientes da Grade de Eventos
Exemplos
EventGridPublisherClient client = new EventGridPublisherClient(
new Uri(TestEnvironment.CloudEventTopicHost),
new AzureKeyCredential(TestEnvironment.CloudEventTopicKey));
var cloudEvent =
new CloudEvent
{
Type = "record",
Source = new Uri("http://www.contoso.com"),
Data = "data"
};
await client.SendCloudNativeCloudEventAsync(cloudEvent);
Solução de problemas
Para obter informações de solução de problemas, consulte a documentação da Biblioteca de Clientes da Grade de Eventos.
Próximas etapas
Veja mais exemplos aqui para usos comuns da biblioteca.
Contribuição
Este projeto aceita contribuições e sugestões. A maioria das contribuições exige que você concorde com um CLA (Contrato de Licença do Colaborador) declarando que você tem o direito de nos conceder, e de fato concede, os direitos de usar sua contribuição. Para obter detalhes, visite https://cla.microsoft.com.
Quando você envia uma solicitação de pull, um bot do CLA determina automaticamente se você precisa fornecer um CLA e preencher a PR corretamente (por exemplo, rótulo, comentário). Basta seguir as instruções fornecidas pelo bot. Você só precisará fazer isso uma vez em todos os repositórios que usam nosso CLA.
Este projeto adotou o Código de Conduta de Software Livre da Microsoft. Para obter mais informações, confira as Perguntas frequentes sobre o Código de Conduta ou contate opencode@microsoft.com para enviar outras perguntas ou comentários.
Azure SDK for .NET