Mapování telemetrie při příchozím přenosu dat na IoT Central
Mapování dat umožňuje transformovat složitou telemetrii zařízení na strukturovaná data v rámci IoT Central. Pro každé z vašich zařízení můžete namapovat konkrétní cestu JSON ve zprávě o telemetrii zařízení na alias. Alias je popisný název cíle, na který mapujete. IoT Central používá mapování k transformaci telemetrie na cestě do IoT Central. Namapovanou telemetrii můžete použít k:
- Vytváření šablon zařízení a prostředí pro správu zařízení v IoT Central
- Normalizuje telemetrii z různých zařízení mapováním cest JSON na více zařízeních na společný alias.
- Export do cílů mimo IoT Central
Následující video vás provede procesem mapování dat:
Mapování telemetrie pro vaše zařízení
Mapování používá výraz JSONPath k identifikaci hodnoty v příchozí telemetrické zprávě pro mapování na alias.
Výraz JSONPath začíná znakem $
, který odkazuje na kořenový prvek zprávy. Následuje $
posloupnost podřízených prvků oddělených hranatými závorkami. Například:
$["messages"]["tmp"]
$["opcua"]["payload"][0]["value"]
$["Messages"]["Payload"]["nsu=http://microsoft.com/Opc/OpcPlc/;s=FastUInt1"]["Value"]
IoT Central používá podmnožinu syntaxe výrazu JSONPath:
- Každý segment může být pouze nezáporným číslem nebo řetězcem uzavřeným v uvozovkách.
- Segment nemůže obsahovat zpětné lomítko, hranatou závorku ani dvojité uvozovky.
- Cesta JSON nesmí být delší než 1 000 znaků.
Pokud chcete vytvořit mapování v aplikaci IoT Central, vyberte jednu z následujících možností a přejděte na panel Mapovat data :
Na libovolné stránce zařízení vyberte Spravovat data mapy zařízení>:
V zobrazení Nezpracovaná data pro vaše zařízení rozbalte libovolnou telemetrická zprávu, najeďte myší na cestu a vyberte Přidat alias. Otevře se panel Mapovat data s výrazem JSONPath zkopírovaným do pole cesta JSON :
Na levé straně panelu Mapová data se zobrazuje nejnovější zpráva z vašeho zařízení. Najeďte myší na libovolnou část dat a vyberte Přidat alias. Výraz JSONPath se zkopíruje do cesty JSON. Přidejte název aliasu , který nesmí být delší než 64 znaků. Alias nemůžete použít k odkazu na pole ve složitém objektu definovaném v šabloně zařízení.
Přidejte tolik mapování, kolik potřebujete, a pak vyberte Uložit:
Pro dané zařízení:
- Žádná dvě mapování nemohou mít stejnou cestu JSON.
- Žádná dvě mapování nesmí mít stejný alias.
Tip
Možná budete muset několik minut počkat, než vaše zařízení odešle zprávu telemetrie, která se zobrazí na levém panelu. Pokud na levém panelu stále nejsou žádná data, můžete ručně zadat výraz JSONPath do pole Cesta JSON .
Pokud chcete ověřit, že IoT Central mapuje telemetrii, přejděte do zobrazení nezpracovaných dat pro vaše zařízení a zkontrolujte _mappeddata
část:
Pokud po aktualizaci nezpracovaných dat několikrát nevidíte namapovaná data, zkontrolujte, jestli výraz JSONPath, který používáte, odpovídá struktuře zprávy telemetrie.
U IoT Edge zařízení se mapování dat vztahuje na telemetrii ze všech modulů IoT Edge a centra. Mapování nemůžete použít na konkrétní modul Azure IoT Edge.
U zařízení přiřazených k šabloně zařízení nemůžete mapovat data pro komponenty nebo zděděná rozhraní. Před přiřazením k šabloně zařízení ale můžete namapovat jakákoli data ze zařízení.
Správa mapování
Pokud chcete zobrazit, upravit nebo odstranit mapování, přejděte na stránku Namapované aliasy . Vyberte mapování, které chcete upravit nebo odstranit. Můžete vybrat více mapování a odstranit je najednou:
Ve výchozím nastavení exporty dat z IoT Central zahrnují mapovaná data. Pokud chcete vyloučit mapovaná data, použijte při exportu dat transformaci dat .
Mapování nemodelované telemetrie
Můžete mapovat nemodelovanou telemetrii, včetně telemetrie z nemodelovaných komponent. Například s ohledem na workingSet
telemetrii definovanou v kořenové komponentě a temperature
telemetrii definovanou v komponentě termostatu, jak je znázorněno v následujícím příkladu:
{
"_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"
}
Tuto telemetrii můžete mapovat pomocí následujících definic mapování:
$["workingSet"] ws
$["temperature"] temp
Poznámka
Nezahrnujte název komponenty do definice mapování.
Výsledky těchto pravidel mapování vypadají jako v následujících příkladech:
{
"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"
}
Teď můžete pomocí namapovaných aliasů zobrazit telemetrii v grafu nebo řídicím panelu. Při exportu telemetrie můžete také použít namapované aliasy.
Další kroky
Teď, když jste se naučili mapovat data pro vaše zařízení, je dalším navrhovaným krokem informace o tom, jak pomocí Průzkumníka dat analyzovat data zařízení.