Azure Event Hubs es un servicio Paas de ingesta de datos, que se almacena en particiones, lo hace posible su escalabilidad.
![Azure-Event-Hubs](https://blog.aitana.es/wp-content/uploads/2021/12/Azure-Event-Hubs.jpg)
Para este tutorial vamos a actuar de Event Producer, para la transmisión de datos usaremos el protocolo HTTPS y el mensaje será en formato JSON. ¡Vamos a empezar!
1. Configurar el Event Hub
Buscamos el servicio Event Hubs
![Buscar-Azure-Event-Hubs](https://blog.aitana.es/wp-content/uploads/2021/12/Buscar-Azure-Event-Hubs.jpg)
Primero creamos el Espacio de nombre (namespace): Es el nombre que tendrá la URL a la cual enviaremos la petición POST nombre.servicebus.windows.net
![Crear-un-espacio-de-nombres](https://blog.aitana.es/wp-content/uploads/2021/12/Crear-un-espacio-de-nombres.jpg)
Una vez tengamos el namespace creado, creamos el Event Hub
![Crear-el-event-hub](https://blog.aitana.es/wp-content/uploads/2021/12/Crear-el-event-hub.jpg)
![Crear-centro-de-eventos](https://blog.aitana.es/wp-content/uploads/2021/12/Crear-centro-de-eventos.jpg)
Para poder enviar o consultar eventos necesitamos crear una directiva
![Crear-una-directiva](https://blog.aitana.es/wp-content/uploads/2021/12/Crear-una-directiva.jpg)
La directiva la marcamos como Enviar, así podremos enviar eventos.
![Agregar-directiva-SaS](https://blog.aitana.es/wp-content/uploads/2021/12/Agregar-directiva-SaS.jpg)
Una vez creada la directiva tenemos que copiar la cadena de conexión la cual nos brindará los datos necesarios para poder conectar con el Event Hub
![Conectar-con-el-Event-Hub](https://blog.aitana.es/wp-content/uploads/2021/12/Conectar-con-el-Event-Hub.jpg)
De la cadena de conexión usaremos todos los datos proporcionados cuando realicemos la petición desde BC
![endpoint azure event hub](https://blog.aitana.es/wp-content/uploads/2021/12/endpoint-azure-event-hub.jpg)
2. Crear la llamada desde BC
Creamos un objeto Json simple con 2 propiedades (id, description) y lo escribimos en una variable String
![Creamos-un-objeto-json](https://blog.aitana.es/wp-content/uploads/2021/12/Creamos-un-objeto-json.jpg)
Enviamos la petición http usando los dotnets HttpWebRequest
![Enviamos-la-petición-http](https://blog.aitana.es/wp-content/uploads/2021/12/Enviamos-la-peticion-http.jpg)
Prestamos atención sobre la función CreateCredentials4EventHub, en esta función enviamos en la cabecera del request el SAS Token,
![Funcion-CreateCredentials4EventHub](https://blog.aitana.es/wp-content/uploads/2021/12/Funcion-CreateCredentials4EventHub.jpg)
Aquí os dejo un enlace donde explica como generar el SAS Token y como hacer la llamada en la cabecera del request: https://docs.microsoft.com/es-es/azure/event-hubs/authenticate-shared-access-signature
En la función GetSignatureSHA256 creamos el SAS Token y lo devolvemos en la variable pSignature
![Creamos-el-SAS-Token](https://blog.aitana.es/wp-content/uploads/2021/12/Creamos-el-SAS-Token.jpg)
Una vez hemos hecho la petición, en la función principal MyEventHubTest mostramos la respuesta, si todo ha ido bien el servicio nos devuelve un string en blanco caso contrario nos dará el error correspondiente.
![Funcion principal MyEventHubTest](https://blog.aitana.es/wp-content/uploads/2021/12/Funcion-principal-MyEventHubTest.png)
Para ver el Json que hemos enviado al EventHub nos vamos a la opción Procesar datos
![Procesar-datos](https://blog.aitana.es/wp-content/uploads/2021/12/Procesar-datos.jpg)
Ejecutamos la Consulta de prueba y comprobamos que el Json que hemos enviado desde BC se en encuentra en el Eventhub myfirsteh
![Eventhub-myfirsteh](https://blog.aitana.es/wp-content/uploads/2021/12/Eventhub-myfirsteh.jpg)
Y hasta aquí el tutorial de cómo enviar Eventos hacia Azure Event Hubs. Si tienes cualquier duda o necesitas que te ayudemos a ponerlo en marcha, ¡ponte en contacto con nosotros rellenando el siguiente formulario!