Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Azure Event Grid helpt u bij het bouwen van toepassingen op basis van gebeurtenissen en integreert eenvoudig IoT-gebeurtenissen in uw bedrijfsoplossingen. In dit artikel wordt u begeleid bij een installatie met cosmos DB, logische app, IoT Hub-gebeurtenissen en een gesimuleerde Raspberry Pi voor het verzamelen en opslaan van verbindings- en losgekoppelde gebeurtenissen van een apparaat.
Vanaf het moment dat uw apparaat werkt, wordt een reeks bewerkingen geactiveerd.
- Het Pi-apparaat, met behulp van uw IoT Hub-apparaatsleutel, wordt gestart en vervolgens gestopt 
- Een IoT Hub-gebeurtenis legt de apparaatactiviteit vast en verzendt vervolgens een HTTP-aanvraag naar uw logische app 
- De logische app verwerkt de HTTP-aanvraag op basis van een voorwaarde die u hebt ingesteld 
- De Logic App registreert verbindings- of verbreekgebeurtenissen in een nieuw document in Cosmos DB. 
Prerequisites
- Een actief Azure Cosmos DB for NoSQL-account. Als u er nog geen hebt gemaakt, raadpleegt u Een databaseaccount maken voor een overzicht. 
- Een verzameling in uw database. Zie Een verzameling toevoegen voor een overzicht. Wanneer u uw verzameling maakt, gebruikt u - /idvoor de partitiesleutel.
- Een Azure-abonnement. Als u geen Azure-abonnement hebt, kunt u er gratis een maken voordat u begint. 
- Een IoT-hub in uw Azure-abonnement. Als u nog geen hub hebt, kunt u de stappen volgen in Een IoT-hub maken. 
Een logische app maken
We gaan een logische app maken en een Event Grid-trigger toevoegen waarmee de resourcegroep voor uw virtuele machine wordt bewaakt.
Een Logic App-resource maken
- Selecteer in Azure Portal+Een resource maken, selecteer Integratie en vervolgens Logische app. 
- Vul het formulier in om een nieuwe logische app te maken met: - Uw abonnement 
- Uw resourcegroep (of maak een nieuwe aan) 
- Een logische app-naam die uniek is in uw abonnement 
- De regio van uw IoT-hub 
- Nee voor het inschakelen van Log Analytics 
- Een plansoort Verbruik - Note - Het type Verbruiksabonnement is de optie waarmee de ontwerper van logische apps in de gebruikersinterface wordt ingeschakeld. Als u Standard (de standaardinstelling) kiest, moet u een nieuwe werkstroom maken om de ontwerper van logische apps beschikbaar te maken. 
 
- Selecteer Beoordelen en maken om uw configuratie te controleren en selecteer Vervolgens Maken om de logische app te maken. 
- U hebt nu een Azure-resource gemaakt voor uw logische app. Nadat Azure uw logische app heeft geïmplementeerd, selecteert u Ga naar de resource. Ontwerper van logische apps toont sjablonen voor veelvoorkomende patronen, zodat u sneller aan de slag kunt. 
- Scroll in de Logic app-designer totdat u de sectie Sjablonen ziet en kies vervolgens Lege Logic App, zodat u uw logische app vanaf nul kunt bouwen. 
Een trigger selecteren
Een trigger is een specifieke gebeurtenis waarmee uw logische app wordt gestart. Voor deze zelfstudie is de trigger voor het activeren van de werkstroom het ontvangen van een aanvraag via HTTP.
- Typ HTTP in de zoekbalk connectors en triggers en druk op Enter. 
- Selecteer de aanvraag Wanneer een HTTP-aanvraag wordt ontvangen als de trigger. 
- Selecteer Gebruik voorbeeldpayload om een schema te genereren. 
- Plak de volgende JSON-voorbeeldcode in het tekstvak en selecteer Gereed. - Deze JSON wordt alleen gebruikt als sjabloon, dus de exacte waarden zijn niet belangrijk. - [{ "id": "fbfd8ee1-cf78-74c6-dbcf-e1c58638ccbd", "topic": "/SUBSCRIPTIONS/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/RESOURCEGROUPS/EGTESTRG/PROVIDERS/MICROSOFT.DEVICES/IOTHUBS/MYIOTHUB", "subject": "devices/Demo-Device-1", "eventType": "Microsoft.Devices.DeviceConnected", "eventTime": "2018-07-03T23:20:11.6921933+00:00", "data": { "deviceConnectionStateEventInfo": { "sequenceNumber": "000000000000000001D4132452F67CE200000002000000000000000000000001" }, "hubName": "MYIOTHUB", "deviceId": "48e44e11-1437-4907-83b1-4a8d7e89859e", "moduleId": "" }, "dataVersion": "1", "metadataVersion": "1" }]
Een voorwaarde maken
Voorwaarden helpen specifieke acties uit te voeren zodra aan die specifieke voorwaarden is voldaan. Voor dit artikel moet worden gecontroleerd of eventType is verbonden met het apparaat of de verbinding met het apparaat is verbroken. De actie die wordt uitgevoerd wanneer dat eventType waar is, is het maken van een document in Azure Cosmos DB. Deze voorwaarde wordt gemaakt in de ontwerpfunctie voor logische apps.
- Selecteer + Nieuwe stap, vervolgens het ingebouwde tabblad, zoek en selecteer het besturingselement met de naam Voorwaarde. 
- Wijzig en naar of in uw voorwaarde, zodat we verbindingsgebeurtenissen of ontkoppelingsevenementen in één parse willen vastleggen. 
- Selecteer in het vak Kies een waarde en er wordt een pop-up weergegeven met de dynamische inhoud , de velden die kunnen worden geselecteerd. - Kies eventType. De pop-up wordt gesloten en u ziet dat hoofdtekst wordt geplaatst in Selecteer een uitvoer uit de vorige stappen, automatisch. Selecteer Voorwaarde om de voorwaardelijke statement opnieuw te openen. 
- Houd de waarde gelijk aan . 
- Typ Microsoft.Devices.DeviceConnected als de laatste waarde van die rij. 
- Selecteer + Toevoegen om nog een rij toe te voegen. 
- Deze tweede rij is vergelijkbaar met de eerste rij, behalve dat we zoeken naar verbroken gebeurtenissen. - Gebruik eventType, is gelijk aan en Microsoft.Devices.DeviceDisconnected voor de rijwaarden. 
 
- Klik in het dialoogvenster if true op een actie toevoegen. 
- Zoek naar Cosmos DB en selecteer Azure Cosmos DB - Document maken of bijwerken (V3) 
- U ziet het deelvenster Document maken of bijwerken (V3 ). Voer deze waarden in voor de velden: - Azure Cosmos DB-accountnaam: {Uw accountnaam toevoegen} - Database-id: ToDoList - Verzamelings-id: Items - Document: Kiezen - Current itemuit de lijst met parameters voor dynamische inhoud
- Sla uw logische app op. 
HTTP-URL kopiëren
Voordat u de Logic Apps Designer verlaat, kopieert u de URL waarnaar uw Logic App luistert voor een trigger. U gebruikt deze URL voor het configureren van Event Grid.
- Vouw de triggerconfiguratiebox Wanneer een HTTP-aanvraag wordt ontvangen uit door erop te klikken. 
- Kopieer de waarde van URL voor HTTP POST door de knop URL kopiëren ernaast te selecteren. 
- Sla deze URL op zodat u deze in de volgende sectie kunt gebruiken. 
Abonnement voor IoT Hub-gebeurtenissen configureren
In deze sectie configureert u de IoT-hub voor het publiceren van gebeurtenissen op het moment dat deze optreden.
- Ga in Azure Portal naar uw IoT-hub. 
- Selecteer Gebeurtenissen. 
- Selecteer + Gebeurtenisabonnement.   
- Vul details van gebeurtenisabonnement in: geef een beschrijvende naam op en selecteer Event Grid-schema als gebeurtenisschema. 
- Maak een systeemonderwerpnaam voor uw IoT Hub-resource. 
- Vul de velden Gebeurtenistypen in. Selecteer in de vervolgkeuzelijst alleen Apparaat verbonden en Apparaat verbroken in het menu. Klik ergens anders op het scherm om de lijst te sluiten en uw selecties op te slaan.   
- Voor Eindpuntdetails selecteert u Eindpunttype als Webhook en klikt u op eindpunt selecteren en plakt u de URL die u hebt gekopieerd uit uw logische app en bevestigt u de selectie.   
- Het formulier moet er nu uitzien zoals in het volgende voorbeeld: - Selecteer Maken om het gebeurtenisabonnement op te slaan. - Important - Wacht enkele minuten tot de gebeurtenis is verwerkt voordat u uw apparaat inschakelt. Wanneer Azure-services worden gemaakt of gewijzigd, kan het initiëren van de volgende stap in uw pijplijn te snel leiden tot onnodige fouten. Als uw IoT-hub bijvoorbeeld niet actief is, is deze niet gereed voor het ontvangen van gebeurtenissen. Controleer de overzichtspagina van uw IoT-hub om te zien of uw IoT-hub al dan niet actief is. Als dat niet het is, ziet u boven aan de pagina een waarschuwing. 
Apparaat uitvoeren en gebeurtenissen observeren
Nu uw gebeurtenisabonnement is ingesteld, gaan we testen door een apparaat te verbinden.
Een apparaat registreren in IoT Hub
- Selecteer Apparaten in uw IoT-hub. 
- Selecteer + Apparaat toevoegen bovenaan het deelvenster. 
- Voer voor apparaat-id het veld in - Demo-Device-1.
- Selecteer Opslaan. 
- Klik nogmaals op het apparaat; nu worden de verbindingsreeksen en sleutels ingevuld. Kopieer en sla de primaire verbindingsreeks op voor later gebruik. 
Raspberry Pi-simulator starten
Laten we de Raspberry Pi-websimulator gebruiken om de apparaatverbinding te simuleren.
Raspberry Pi-simulator starten
Een voorbeeldtoepassing uitvoeren op de Raspberry Pi-websimulator
Met deze voorbeeld-app wordt een apparaat verbonden gebeurtenis geactiveerd.
- Vervang in het coderingsgebied de tijdelijke aanduiding in regel 15 door de verbindingsreeks van uw Azure IoT Hub-apparaat die u aan het einde van de vorige sectie hebt opgeslagen. 
- Voer de toepassing uit door Uitvoeren te selecteren. - U ziet iets vergelijkbaars met de volgende uitvoer met de sensorgegevens en de berichten die naar uw IoT-hub worden verzonden. 
- U kunt de overzichtspagina van uw logische app controleren om te controleren of uw logica wordt geactiveerd. Dit betekent geslaagd of mislukt. Als u hier kijkt, weet u wat de status van uw logische app is als er probleemoplossing nodig is. Verwacht een vertraging van 15 tot 30 seconden na het uitvoeren van de trigger. Als u problemen met uw logische app wilt oplossen, raadpleegt u dit artikel Over het oplossen van fouten . 
- Selecteer Stop om de simulator te stoppen, wat een Apparaat losgekoppeld-gebeurtenis activeert. Deze gebeurtenis wordt gelogd op de Overzicht pagina van de Logic App, net zoals de connectiegebeurtenis die daar is vastgelegd. 
U hebt nu een voorbeeldtoepassing uitgevoerd om verbindings- en losgekoppelde gebeurtenissen van uw apparaat te verzamelen, die naar uw IoT-hub gaan.
Gebeurtenissen bekijken in Azure Cosmos DB
U ziet de resultaten van de uitgevoerde logische app in uw Cosmos DB-document. Het document wordt weergegeven in de verzameling Items wanneer u de pagina vernieuwt. Elke verbindingsstatusgebeurtenis genereert een nieuw document waaraan een uniek iddocument is toegewezen. In de volgende afbeelding ziet u het document dat is gemaakt toen het apparaat werd gestart (verbonden). Het verbonden gebeurtenistype wordt vermeld in de JSON-uitvoer.
              
               
              
              
            
De Azure CLI gebruiken
In plaats van Azure Portal te gebruiken, kunt u de IoT Hub-stappen uitvoeren met behulp van de Azure CLI. Zie de Azure CLI-pagina's voor het maken van een gebeurtenisabonnement en het maken van een IoT-apparaat voor meer informatie.
De hulpbronnen opschonen
In deze zelfstudie zijn resources gebruikt die kosten voor uw Azure-abonnement met zich meebrengen. Wanneer u klaar bent met de zelfstudie en het testen van de resultaten, moet u daarom de resources uitschakelen of verwijderen die u niet wilt behouden.
Logic-app
Als u uw werk aan de logic app niet wilt kwijtraken, schakelt u deze uit in plaats van de app te verwijderen.
- Navigeer naar uw logische app. 
- Selecteer Verwijderen of Uitschakelen op de blade Overzicht. - Elk abonnement kan één gratis IoT-hub hebben. Als u een gratis hub voor deze zelfstudie hebt gemaakt, hoeft u deze niet te verwijderen om kosten te voorkomen. 
IoT Hub of Event Grid
- Navigeer naar uw IoT-hub. 
- Selecteer Verwijderen op de blade Overzicht. 
- Zelfs als u uw IoT-hub behoudt, kunt u het gebeurtenisabonnement verwijderen dat u hebt gemaakt. Selecteer Event Grid in uw IoT-hub. 
- Selecteer het gebeurtenisabonnement dat u wilt verwijderen en selecteer vervolgens Verwijderen. 
Cosmos DB
Als u een Azure Cosmos DB-account uit Azure Portal wilt verwijderen, gaat u naar uw resource en selecteert u Account verwijderen in de bovenste menubalk. Zie gedetailleerde instructies voor het verwijderen van een Azure Cosmos DB-account.
Volgende stappen
- Meer informatie over reageren op IoT Hub-gebeurtenissen met behulp van Event Grid om acties te activeren 
- Meer informatie over wat u nog meer kunt doen met Event Grid 
- Meer informatie over het gebruik van Event Grid en Azure Monitor voor het bewaken, diagnosticeren en oplossen van problemen met apparaatconnectiviteit met IoT Hub 
 
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
               
              
              