Azure Digital Twins-események irányítása

Ez a cikk azt a folyamatot ismerteti, amellyel az Azure Digital Twins eseményadatokat küld, mind az eseményeknek az Azure Digital Twinsen belüli belső útválasztásához, mind pedig az eseményadatoknak a szolgáltatáson kívüli alárendelt szolgáltatásoknak vagy csatlakoztatott számítási erőforrásoknak való külső küldéséhez.

Az Eseményértesítések átirányítása az Azure Digital Twinsből egy kétlépéses folyamat: végpontok létrehozása, majd eseményútvonalak létrehozása az adatoknak a végpontokra való küldéséhez. Ez a cikk részletesebben ismerteti ezeket a fogalmakat. Azt is ismerteti, hogy mi történik, ha egy végpont nem tud időben eseményt kézbesíteni (ez egy kézbesíthetetlen levélként ismert folyamat).

Esemény-útválasztás áttekintése

Az Azure Digital Twins-adatok küldésének két fő forgatókönyve van, és az eseményútvonalak mindkét megoldáshoz használhatók:

  • Eseményadatok küldése az Azure Digital Twins-gráf egyik ikerpéldányából egy másikba. Ha például egy digitális ikerpéldány tulajdonsága megváltozik, érdemes lehet egy másik digitális ikerpéldányt értesíteni és frissíteni a frissített adatok alapján.
  • Adatok küldése az Azure Digital Twinsen kívül az alsóbb rétegbeli adatszolgáltatásoknak további tárolás vagy feldolgozás céljából. Ha például már használja a Azure Maps, érdemes lehet azure digital twins-adatokat hozzáadnia a megoldás integrált modellezéssel vagy lekérdezésekkel való továbbfejlesztéséhez.

Minden eseménycél esetében az eseményútvonal úgy működik, hogy eseményadatokat küld az Azure Digital Twinsből az előfizetések egyénileg meghatározott végpontjaira . Jelenleg három Azure-szolgáltatás támogatott végpontokhoz: Event Hubs, Event Grid és Service Bus. Ezen Azure-szolgáltatások mindegyike csatlakoztatható más szolgáltatásokhoz, és közvetítőként működik, adatokat küldve a végső célhelyekre, például Azure Maps, vagy vissza az Azure Digital Twinsbe a függő gráffrissítésekhez.

Az alábbi ábra egy nagyobb IoT-megoldáson keresztül mutatja be az eseményadatok áramlását, amely magában foglalja az Azure Digital Twins-adatok végpontokon keresztül más Azure-szolgáltatásokba, valamint az Azure Digital Twinsbe való visszaküldését:

Az Azure Digital Twins több lefelé irányuló szolgáltatás végpontokon keresztüli útválasztásának ábrája.

Az Azure Digital Twinsen kívüli adatforgalom esetében az eseményútvonalak tipikus alsóbb rétegbeli céljai a Time Series Insights, a Azure Maps, a tárolási és az elemzési megoldások. Az Azure Digital Twins legalább egyszer valósítja meg a kimenő szolgáltatásoknak kibocsátott adatok kézbesítését.

Ha a belső digitális ikerpéldány-eseményeket ugyanabban az Azure Digital Twins-megoldásban szeretné útválasztásra használni, folytassa a következő szakaszsal.

Belső digitális ikeresemények irányítása

Az eseményútvonalak az ikergráfon belüli események kezelésére szolgáló mechanizmus, amely digitális ikerpéldányról digitális ikerpéldányra küld adatokat. Ez az eseménykezelés úgy történik, hogy eseményútvonalakat csatlakoztat az Event Griden keresztül a számítási erőforrásokhoz, például Azure Functions. Ezek a függvények ezután meghatározzák, hogy az ikerpéldányok hogyan fogadják és válaszolják meg az eseményeket.

Ha egy számítási erőforrás egy eseményútvonalon fogadott esemény alapján szeretné módosítani az ikergráfot, érdemes előre tudnia, hogy melyik ikerpéldányt kell módosítania. Az eseményüzenet tartalmazza az üzenetet küldő forrás ikerpéldány azonosítóját is, így a számítási erőforrás lekérdezések vagy kapcsolatok használatával megkeresheti a cél ikerpéldányt a kívánt művelethez.

A számítási erőforrásnak független biztonsági és hozzáférési engedélyeket is létre kell hoznia.

Az Azure-függvények digitális ikeresemények feldolgozására való beállításának folyamatáról az Ikerpéldányok eseménykezelésének beállítása című témakörben olvashat.

Végpontok létrehozása

Eseményútvonal definiálásához az a fejlesztőknek először végpontokat kell definiálniuk. A végpont az Azure Digital Twinsen kívüli célhely, amely támogatja az útvonalkapcsolatot. A támogatott célhelyek a következők:

  • Az Event Grid egyéni témakörei
  • Event Hubs
  • Service Bus

Végpont létrehozásához használhatja az Azure Digital Twins REST API-kat, parancssori felületi parancsokat vagy a Azure Portal.

Végpont meghatározásakor meg kell adnia a következőket:

  • A végpont neve
  • A végpont típusa (Event Grid, Event Hubs vagy Service Bus)
  • A hitelesítéshez használt elsődleges kapcsolati sztring és másodlagos kapcsolati sztring
  • A végpont témakörútvonala, például your-topic.westus2.eventgrid.azure.net

Dönthet úgy is, hogy identitásalapú hitelesítéssel hozza létre a végpontot, hogy a végpontot rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitással használja. Ez a beállítás csak az Event Hubs és a Service Bus típusú végpontok esetében érhető el (az Event Grid esetében nem támogatott).

A vezérlősíkon elérhető végponti API-k a következők:

  • Végpont létrehozása
  • Végpontok listájának lekérése
  • Végpont lekérése név alapján
  • Végpont törlése név szerint

A végpontok létrehozásával kapcsolatos részletes utasításokért lásd: Végpontok létrehozása.

Eseményútvonalak létrehozása

Eseményútvonal létrehozásához használhatja az Azure Digital Twins REST API-kat, parancssori felületi parancsokat vagy a Azure Portal.

Íme egy példa egy eseményútvonal ügyfélalkalmazáson belüli létrehozására a CreateOrReplaceEventRouteAsync.NET (C#) SDK-hívás használatával:

string eventFilter = "$eventType = 'DigitalTwinTelemetryMessages' or $eventType = 'DigitalTwinLifecycleNotification'";
var er = new DigitalTwinsEventRoute("endpointName", eventFilter);
await client.CreateOrReplaceEventRouteAsync("routeId", er);
  1. Először létrejön egy DigitalTwinsEventRoute objektum, és a konstruktor egy végpont nevét veszi fel. Ez a endpointName mező azonosít egy végpontot, például az Event Hubsot, az Event Gridet vagy a Service Bust. Ezeket a végpontokat az előfizetésben kell létrehozni, és az Azure Digital Twinshez kell csatolni a vezérlősík API-jaival a regisztrációs hívás kezdeményezése előtt.

  2. Az eseményútvonal-objektum szűrőmezővel is rendelkezik, amellyel korlátozható az ezt az útvonalat követő események típusai. A szűrő további true szűrés nélkül engedélyezi az útvonalat (a szűrő false letiltja az útvonalat).

  3. Ezt az eseményútvonal-objektumot ezután a rendszer átadja a-nak CreateOrReplaceEventRouteAsync, valamint az útvonal nevét.

Tipp

Minden SDK-függvény szinkron és aszinkron verzióban jön létre.

Az eseményútvonalak létrehozásával kapcsolatos részletes utasításokért lásd: Útvonalak és szűrők létrehozása.

Kézbesíthetetlen üzenetek eseményei

Ha egy végpont egy adott időszakon belül nem tud eseményt kézbesíteni, vagy miután többször megpróbálta kézbesíteni az eseményt, a kézbesítetlen eseményt elküldheti egy tárfiókba. Ezt a folyamatot kézbesíthetetlen leveleknek nevezzük. Az Azure Digital Twins kézbesíthetetlen eseményt küld, ha az alábbi feltételek valamelyike teljesül:

  • Az esemény nem lesz kézbesítve az élettartamon belül
  • Az esemény kézbesítésére tett próbálkozások száma túllépte a korlátot

Ha valamelyik feltétel teljesül, az esemény el lesz dobva vagy kézbesíthetetlen lesz. Alapértelmezés szerint az egyes végpontok nem kapcsolják be a kézbesíthetetlen üzeneteket. Az engedélyezéshez meg kell adnia egy tárfiókot a kézbesítetlen események tárolásához a végpont létrehozásakor. Ezután lekérhet eseményeket ebből a tárfiókból a kézbesítések feloldásához.

A kézbesíthetetlen levelek helyének beállítása előtt rendelkeznie kell egy tárolóval rendelkező tárfiókkal. A végpont létrehozásakor meg kell adnia a tároló URL-címét. A kézbesíthetetlen levelek tárolói URL-címként és SAS-jogkivonatként lesznek megadva. Ennek a jogkivonatnak csak write a tárfiókon belüli céltárolóra van szüksége. A teljesen formázott URL-cím formátuma a következő lesz: https://<storage-account-name>.blob.core.windows.net/<container-name>?<SAS-token>

További információ az SAS-jogkivonatokról: Korlátozott hozzáférés biztosítása az Azure Storage-erőforrásokhoz közös hozzáférésű jogosultságkódok (SAS) használatával

Ha meg szeretné tudni, hogyan állíthat be végpontot kézbesíthetetlen betűkkel, tekintse meg a Végpontbeállítások: Kézbesíthetetlen levelek című témakört.

Eseményüzenetek típusai

A IoT Hub és az Azure Digital Twins különböző eseménytípusai különböző típusú értesítési üzeneteket hoznak létre az alábbiak szerint.

Notification type (Értesítés típusa) Útválasztási forrás neve Létrehozva...
Digitális ikerpéldány változási értesítése Digitális ikerpéldány változási értesítése digitális ikertulajdonságok módosítása
Digitális ikerpéldány életciklus-értesítése Digitális ikerpéldány életciklus-értesítése bármely digitális ikerpéldány létrehozási vagy törlési művelete
Digitális ikerpéldány kapcsolati változásról szóló értesítése Digitális ikerpéldány kapcsolati változásról szóló értesítése bármely digitális ikerpéldány-kapcsolat módosítása
Digitális ikerpéldány telemetriai üzenetei Telemetriai üzenetek bármilyen telemetriaüzenet

Következő lépések

Folytassa a végpontok és eseményútvonalak beállítására vonatkozó részletes útmutatóval:

Vagy kövesse ezt az útmutatót egy Azure-függvény beállításához az ikerpéldányok eseménykezeléséhez az Azure Digital Twinsben: