Eseguire il mapping dei dati di telemetria in ingresso a IoT Central
Il mapping dei dati consente di trasformare i dati di telemetria dei dispositivi complessi in dati strutturati all'interno di IoT Central. Per ognuno dei dispositivi è possibile eseguire il mapping di un percorso JSON specifico nel messaggio di telemetria del dispositivo a un alias. Un alias è un nome descrittivo per la destinazione a cui si esegue il mapping. IoT Central usa i mapping per trasformare i dati di telemetria nel modo in IoT Central. È possibile usare i dati di telemetria mappati a:
- Creare modelli di dispositivo e esperienze di gestione dei dispositivi in IoT Central.
- Normalizzare i dati di telemetria da dispositivi diversi eseguendo il mapping dei percorsi JSON in più dispositivi a un alias comune.
- Esportare in destinazioni esterne a IoT Central.
Il video seguente illustra il processo di mapping dei dati:
Eseguire il mapping dei dati di telemetria per il dispositivo
Un mapping usa un'espressione JSONPath per identificare il valore in un messaggio di telemetria in ingresso per eseguire il mapping a un alias.
Un'espressione JSONPath inizia con il carattere, che fa riferimento all'elemento $
radice del messaggio. L'oggetto $
è seguito da una sequenza di elementi figlio separati usando parentesi quadre. Ad esempio:
$["messages"]["tmp"]
$["opcua"]["payload"][0]["value"]
$["Messages"]["Payload"]["nsu=http://microsoft.com/Opc/OpcPlc/;s=FastUInt1"]["Value"]
IoT Central usa un subset della sintassi delle espressioni JSONPath:
- Ogni segmento può essere solo un numero non negativo o una stringa racchiusa tra virgolette doppie.
- Un segmento non può contenere barre rovesciata, parentesi quadre o virgolette doppie.
- Un percorso JSON non può superare i 1.000 caratteri.
Per creare un mapping nell'applicazione IoT Central, scegliere una delle opzioni seguenti per passare al pannello Dati mappa :
Da qualsiasi pagina del dispositivo selezionare Gestisci dati mappa dispositivi>:
Dalla visualizzazione Dati non elaborati per il dispositivo espandere qualsiasi messaggio di telemetria, passare il puntatore del mouse su un percorso e selezionare Aggiungi alias. Il pannello dati Mappa viene aperto con l'espressione JSONPath copiata nel campo percorso JSON :
Il lato sinistro del pannello dati Mappa mostra il messaggio più recente dal dispositivo. Passare il puntatore del mouse su qualsiasi parte dei dati e selezionare Aggiungi alias. L'espressione JSONPath viene copiata nel percorso JSON. Aggiungere un nome alias senza più di 64 caratteri. Non è possibile usare l'alias per fare riferimento a un campo in un oggetto complesso definito nel modello di dispositivo.
Aggiungere il numero di mapping necessari e quindi selezionare Salva:
Per un determinato dispositivo:
- Nessun mapping può avere lo stesso percorso JSON.
- Nessun mapping può avere lo stesso alias.
Suggerimento
Potrebbe essere necessario attendere diversi minuti per il dispositivo per inviare un messaggio di telemetria da visualizzare nel pannello a sinistra. Se nel pannello sinistro non sono ancora presenti dati, è possibile immettere manualmente un'espressione JSONPath nel campo percorso JSON .
Per verificare che IoT Central stia mappando i dati di telemetria, passare alla visualizzazione dati non elaborati per il dispositivo e controllare la _mappeddata
sezione:
Se i dati mappati non vengono visualizzati più volte dopo l'aggiornamento dei dati non elaborati, verificare che l'espressione JSONPath usata corrisponda alla struttura del messaggio di telemetria.
Per i dispositivi IoT Edge, il mapping dei dati si applica ai dati di telemetria da tutti i moduli e l'hub IoT Edge. Non è possibile applicare mapping a un modulo di IoT Edge di Azure specifico.
Per i dispositivi assegnati a un modello di dispositivo, non è possibile eseguire il mapping dei dati per i componenti o le interfacce ereditate. Tuttavia, è possibile eseguire il mapping di tutti i dati dal dispositivo prima di assegnarlo a un modello di dispositivo.
Gestire i mapping
Per visualizzare, modificare o eliminare mapping, passare alla pagina Alias mappati . Selezionare un mapping per modificarlo o eliminarlo. È possibile selezionare più mapping ed eliminarli contemporaneamente:
Per impostazione predefinita, le esportazioni di dati da IoT Central includono dati mappati. Per escludere i dati mappati, usare una trasformazione dei dati nell'esportazione dei dati.
Eseguire il mapping dei dati di telemetria non modellati
È possibile eseguire il mapping dei dati di telemetria non modellati, inclusi i dati di telemetria dai componenti nonmodelli. Ad esempio, dato i dati di telemetria definiti nel componente radice e i workingSet
temperature
dati di telemetria definiti in un componente termostato illustrati nell'esempio seguente:
{
"_unmodeleddata": {
"workingSet": 74
},
"_eventtype": "Telemetry",
"_timestamp": "2022-07-18T09:22:40.257Z"
}
{
"_unmodeleddata": {
"thermostat2": {
"__t": "c",
"temperature": 44
}
},
"_eventtype": "Telemetry",
"_timestamp": "2022-07-18T09:21:48.69Z"
}
È possibile eseguire il mapping di questi dati di telemetria usando le definizioni di mapping seguenti:
$["workingSet"] ws
$["temperature"] temp
Nota
Non includere il nome del componente nella definizione di mapping.
I risultati di queste regole di mapping sono simili agli esempi seguenti:
{
"telemetries": {
"workingSet": 84,
"_mappeddata": {
"ws": 84
}
}
}
{
"_unmodeleddata": {
"thermostat2": {
"__t": "c",
"temperature": 12
},
"_mappeddata": {
"thermostat2": {
"__t": "c",
"temp": 12
}
}
},
"_eventtype": "Telemetry",
"_timestamp": "2022-07-18T09:31:21.088Z"
}
È ora possibile usare gli alias mappati per visualizzare i dati di telemetria in un grafico o in un dashboard. È anche possibile usare gli alias mappati quando si esportano i dati di telemetria.
Passaggi successivi
Dopo aver appreso come eseguire il mapping dei dati per il dispositivo, un passaggio successivo suggerito consiste nell'apprendere come usare Esplora dati per analizzare i dati.