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.
Met het toestandsarchief kunnen operators data bewaren en ophalen en stateful-bewerkingen in uw datastroomgrafieken mogelijk maken. In dit artikel wordt beschreven hoe u het statusarchief gebruikt met WASM-operators in de Azure IoT-bewerkingen lokale ontwikkelomgeving.
Voordat u de stappen in dit artikel uitvoert, moet u uw lokale ontwikkelomgeving instellen en lokaal een grafiektoepassing bouwen en uitvoeren. Zie voor meer informatie Build WASM-modules voor gegevensstromen.
Vereiste voorwaarden
Voltooi de vereisten die worden vermeld in build-WASM-modules voor gegevensstromen.
Open de voorbeeldwerkruimte voor het statusarchief
Kloon de opslagplaats Explore IoT Operations als u dat nog niet hebt gedaan.
Open de map explore-iot-operations/samples/wasm/statestore-scenario. Deze map bevat de volgende resources:
-
graph.dataflow.yaml- De configuratie van de gegevensstroomgrafiek met een operator met een ingeschakelde statusopslag. -
statestore.json- Statusarchiefconfiguratie met sleutel-waardeparen. -
data/- Voorbeeldinvoergegevens voor testen. -
operators/- Broncode voor de OTel-Enrich en Filter operatoren.
De statusopslag configureren
Open het
statestore.jsonbestand om de configuratie van het huidige statusarchief weer te geven.U kunt de waarden van
factoryIdofmachineIdvoor het testen wijzigen. De verrijkingsparameter verwijst naar deze sleutels.Open
graph.dataflow.yamlen controleer de verrijkingsconfiguratie. De belangrijke secties van dit bestand worden weergegeven in het volgende fragment:moduleConfigurations: - name: module-otel-enrich/map parameters: enrichKeys: name: enrichKeys description: Comma separated list of DSS keys which will be fetched and added as attributes default: factoryId,machineId operations: - operationType: "source" name: "source" - operationType: "map" name: "module-otel-enrich/map" module: "otel-enrich" - operationType: "sink" name: "sink"De standaardwaarde van de
enrichKeysparameter (factoryId,machineId) bepaalt welke sleutels worden opgehaald uit het statusarchief en als kenmerken worden toegevoegd.Zorg ervoor dat elke vermelde sleutel in
enrichKeysbestaat instatestore.json. Als u sleutels toevoegtstatestore.jsonof verwijdert, werkt u dedefaultwaarde bij of overschrijft u deze met behulp van deTK_CONFIGURATION_PARAMETERSomgevingsvariabele.
Testgegevens bijwerken (optioneel)
U kunt de testgegevens in de data/ map wijzigen om te experimenteren met verschillende invoerwaarden. De voorbeeldgegevens bevatten temperatuurmetingen.
Het scenario voor de statusopslag bouwen en uitvoeren
Als u de lokale uitvoeringsomgeving eerder hebt gestopt, drukt u op Ctrl+Shift+P om het opdrachtenpalet te openen en te zoeken naar Azure IoT-bewerkingen: Ontwikkelomgeving starten. Selecteer release als de uitvoeringsmodus.
Druk op
Ctrl+Shift+Pom het opdrachtenpalet te openen en te zoeken naar Azure IoT-bewerkingen: Bouw alle Gegevensstroom operators. Selecteer release als de buildmodus. Wacht tot de opbouw is voltooid.Druk nogmaals op
Ctrl+Shift+Pen zoek naar Azure IoT-bewerkingen: Application Graph uitvoeren. Selecteer release als de uitvoeringsmodus.Selecteer de
datamap in uw VS Code-werkruimte voor uw invoergegevens. De DevX-container wordt gestart om de grafiek uit te voeren met de voorbeeldinvoer.
Statusopslagfunctionaliteit controleren
Nadat de uitvoering van de grafiek is voltooid:
Bekijk de resultaten in de
data/output/map.Open het gegenereerde
.txtbestand om de verwerkte gegevens te bekijken. Deuser propertiesgedeelte van de uitvoerberichten bevat defactoryIdenmachineIdwaarden die zijn opgehaald uit de statusopslag.Controleer de logboeken
data/output/logs/host-app.logom te controleren of deotel-enrichoperator waarden heeft opgehaald uit het statusarchief en deze als gebruikerseigenschappen aan de berichten heeft toegevoegd.