Envío de eventos a un entorno de Azure Time Series Insights Gen1 mediante un centro de eventos

Nota:

El servicio Time Series Insights (TSI) dejará de admitirse a partir de marzo de 2025. Considere la posibilidad de migrar los entornos de TSI existentes a soluciones alternativas lo antes posible. Para más información sobre la entrada en desuso y la migración, consulte nuestra documentación.

Precaución

Este es un artículo de Gen1.

En este artículo se explica cómo crear y configurar un centro de eventos en Azure Event Hubs. También se describe cómo ejecutar una aplicación de ejemplo para insertar eventos en Azure Time Series Insights desde Event Hubs. Si tiene un centro de eventos con eventos en formato JSON, pase por alto este tutorial y vea su entorno en Azure Time Series Insights.

Configuración de un centro de eventos

  1. Para aprender a crear un centro de eventos, lea la documentación de Event Hubs.

  2. En el cuadro de búsqueda, busque Event Hubs. Haga clic en Event Hubs en la lista devuelta.

  3. Seleccione su centro de eventos.

  4. Cuando se crea un centro de eventos, se crea un espacio de nombres del centro de eventos. Si todavía no ha creado un centro de eventos en el espacio de nombres, vaya al menú y, en Entities (Entidades), cree un centro de eventos.

    Lista de centros de eventos

  5. Después de crear un centro de eventos, selecciónelo en la lista de centros de eventos.

  6. En el menú, en Entities (Entidades), seleccione Event Hubs.

  7. Seleccione el nombre del centro de eventos para configurarlo.

  8. En Introducción, seleccione Grupos de consumidores y, a continuación, Grupo de consumidores.

    Creación de un grupo de consumidores

  9. Asegúrese de crear un grupo de consumidores que se use exclusivamente con el origen de eventos de Azure Time Series Insights.

    Importante

    Asegúrese de que ningún otro servicio usa este grupo de consumidores, como un trabajo de Azure Stream Analytics u otro entorno de Azure Time Series Insights. Si otros servicios usan el grupo de consumidores, las operaciones de lectura se ven afectadas negativamente en este entorno y en los otros servicios. Si usa $Default como grupo de consumidores, otros lectores podrían volver a usar el grupo de consumidores.

  10. En el menú, en Settings (Configuración), seleccione Shared access policies (Directivas de acceso compartido) y, luego, Add (Agregar).

    Seleccionar las directivas de acceso compartido y luego del botón Add (Agregar)

  11. En el panel Add new shared access policy (Agregar nueva directiva de acceso compartido), cree un acceso compartido denominado MySendPolicy. Usará esta directiva de acceso compartido para enviar eventos en los ejemplos de C# más adelante en este artículo.

    Escribir un nombre en el cuadro Policy name (Nombre de la directiva)

  12. En Claim (Reclamar), active la casilla Send (Enviar).

Adición de una instancia de Azure Time Series Insights

En Azure Time Series Insights Gen2 se pueden agregar datos contextuales a la telemetría entrante mediante el modelo de serie temporal (TSM). En TSM, las etiquetas o señales se denominan instancias, y se pueden almacenar los datos contextuales en los campos de instancia. Los datos se unen en el momento de la consulta mediante un id. de serie temporal. El identificador de serie temporal del proyecto de ejemplo de los molinos de viento que se usará más adelante en este artículo es . Para más información sobre el almacenamiento de datos en campos de instancia, lea la información general acerca del modelo de serie temporal.

Creación de un origen del evento de Azure Time Series Insights

  1. Complete los pasos para crear un origen de eventos si aún no ha creado uno.

  2. Establezca el valor de timeSeriesId. Para más información sobre el id. de serie temporal, lea Modelos de Time Series.

Eventos push del ejemplo de los molinos de viento

  1. Busque Event Hubs en la barra de búsqueda. Haga clic en Event Hubs en la lista devuelta.

  2. Seleccione su instancia de centro de eventos.

  3. Vaya a Directivas de acceso compartidoMySendPolicy. Copie el valor de Connection string-primary key.

    Copiar el valor de la cadena de conexión de la clave principal

  4. Vaya al sitio web de ejemplo de TSI de inserción de datos para granjas eólicas. El sitio crea y ejecuta dispositivos simulados de molinos de viento.

  5. En el cuadro Event Hub Connection String (Cadena de conexión del centro de eventos) de la página web, pegue la cadena de conexión que copió en el campo de entrada de molinos de viento.

    Pegar la cadena de conexión de la clave principal en el cuadro de la cadena de conexión del centro de eventos

  6. Seleccione Click to start (Haga clic para iniciar).

    Sugerencia

    El simulador de molino de viento también crea código JSON que se puede usar como carga útil con las API de consulta de Azure Time Series Insights GA.

    Nota

    El simulador seguirá enviando datos hasta que se cierre la pestaña del explorador.

  7. Vuelva a su centro de eventos en Azure Portal. En la página Información general, se muestran los eventos nuevos que recibe el centro de eventos.

    Una página de información general del centro de eventos que muestra las métricas del centro de eventos

Formas de JSON admitidas

Ejemplo 1

  • Entrada: Un objeto JSON simple.

    {
        "id":"device1",
        "timestamp":"2016-01-08T01:08:00Z"
    }
    
  • Salida: Un evento.

    id timestamp
    device1 2016-01-08T01:08:00Z

Ejemplo 2

  • Entrada: Una matriz JSON con dos objetos JSON. Cada objeto JSON se convierte en un evento.

    [
        {
            "id":"device1",
            "timestamp":"2016-01-08T01:08:00Z"
        },
        {
            "id":"device2",
            "timestamp":"2016-01-17T01:17:00Z"
        }
    ]
    
  • Salida: Dos eventos.

    id timestamp
    device1 2016-01-08T01:08:00Z
    device2 2016-01-08T01:17:00Z

Ejemplo 3

  • Entrada: Un objeto JSON con una matriz JSON anidada que contiene dos objetos JSON.

    {
        "location":"WestUs",
        "events":[
            {
                "id":"device1",
                "timestamp":"2016-01-08T01:08:00Z"
            },
            {
                "id":"device2",
                "timestamp":"2016-01-17T01:17:00Z"
            }
        ]
    }
    
  • Salida: Dos eventos. La propiedad location se copia en cada uno de los eventos.

    ubicación events.id events.timestamp
    WestUs device1 2016-01-08T01:08:00Z
    WestUs device2 2016-01-08T01:17:00Z

Ejemplo 4

  • Entrada: Un objeto JSON con una matriz JSON anidada que contiene dos objetos JSON. Esta entrada muestra que las propiedades globales se pueden representar mediante el objeto JSON complejo.

    {
        "location":"WestUs",
        "manufacturer":{
            "name":"manufacturer1",
            "location":"EastUs"
        },
        "events":[
            {
                "id":"device1",
                "timestamp":"2016-01-08T01:08:00Z",
                "data":{
                    "type":"pressure",
                    "units":"psi",
                    "value":108.09
                }
            },
            {
                "id":"device2",
                "timestamp":"2016-01-17T01:17:00Z",
                "data":{
                    "type":"vibration",
                    "units":"abs G",
                    "value":217.09
                }
            }
        ]
    }
    
  • Salida: Dos eventos.

    ubicación manufacturer.name manufacturer.location events.id events.timestamp events.data.type events.data.units events.data.value
    WestUs manufacturer1 EastUs device1 2016-01-08T01:08:00Z presión psi 108.09
    WestUs manufacturer1 EastUs device2 2016-01-08T01:17:00Z vibration abs G 217.09

Pasos siguientes