Senden von Daten an einen gRPC-Endpunkt mit dem Datenverarbeiter
Wichtig
Die von Azure Arc aktivierte Azure IoT Operations Preview befindet sich derzeit in der VORSCHAU. Sie sollten diese Vorschausoftware nicht in Produktionsumgebungen verwenden.
Sie müssen eine neue Azure IoT Operations-Installation bereitstellen, wenn eine allgemein verfügbare Version verfügbar ist, können Sie keine Vorschauinstallation aktualisieren.
Die zusätzlichen Nutzungsbestimmungen für Microsoft Azure-Vorschauen enthalten rechtliche Bedingungen. Sie gelten für diejenigen Azure-Features, die sich in der Beta- oder Vorschauversion befinden oder aber anderweitig noch nicht zur allgemeinen Verfügbarkeit freigegeben sind.
Verwenden Sie das gRPC Ziel zum Schreiben verarbeiteter und sauberer Daten in einen gRPC-Endpunkt zur weiteren Verarbeitung.
Wenn Sie Daten von einer Zielstufe an einen gRPC-Endpunkt senden:
- Derzeit unterstützt die Phase nur den Unary RPC-Typ.
- Sie können nur das Protobuf Format verwenden. Sie müssen das Protobuf mit der gRPC-Aufrufphase verwenden.
- Da es sich bei dieser Phase um ein Pipelineziel handelt, wird die Antwort verworfen.
Voraussetzungen
Um eine Zielpipelinephase zu konfigurieren und zu verwenden, benötigen Sie Folgendes:
- Eine bereitgestellte Instanz des Datenauftragsverarbeiters, die die optionale Datenverarbeitungskomponente enthält.
- Ein gRPC-Server , auf den über die Datenverarbeitungsinstanz zugegriffen werden kann.
- Das
protoc
Tool zum Generieren des Deskriptors.
Konfigurieren der Zielstufe
Die JSON-Konfiguration der gRPC-Zielstufe definiert die Details der Phase. Um die Phase zu erstellen, können Sie entweder mit der formularbasierten Benutzeroberfläche interagieren oder die JSON-Konfiguration auf der Registerkarte Erweitert bereitstellen:
Name | Typ | Beschreibung | Erforderlich | Standard | Beispiel |
---|---|---|---|---|---|
Name | Zeichenfolge | Ein Name, der in der Datenverarbeitungsoberfläche angezeigt werden soll. | Ja | - | MLCall2 |
Beschreibung | string | Eine benutzerfreundliche Beschreibung der Zielstufe. | Nein | Call ML endpoint 2 |
|
Server address | String | Die gRPC-Serveradresse | Ja | - | https://localhost:1313 |
RPC-Name | Zeichenfolge | Der aufzurufende RPC-Name | Ja | - | GetInsights |
Deskriptor1 | String | Der base64-codierte Deskriptor | Ja | - | CuIFChxnb29nb |
Authentifizierung | Zeichenfolge | Der zu verwendende Authentifizierungstyp. None /Metadata . |
Ja | None |
None |
Metadatenschlüssel | Zeichenfolge | Der Metadatenschlüssel, der verwendet werden soll, wenn Authentication auf Metadata festgelegt ist. |
Nein | authorization |
authorization |
Geheimnis | Zeichenfolge | Der Geheimnisverweis, der verwendet werden soll, wenn Authentication auf Metadata festgelegt ist. |
No | - | mysecret |
Erneut versuchen | Wiederholen | Die zu verwendende Wiederholungsrichtlinie. | No | default |
fixed |
API-Anforderung > Textpfad | Path | Der Pfad zum Teil der Datenverarbeitungsnachricht, der serialisiert und als Anforderungstext festgelegt werden soll. Lassen Sie es leer, wenn Sie keinen Anforderungstext senden müssen. | Nein | - | .payload.gRPCRequest |
API-Anforderung > Metadaten > Schlüssel2 | Statisches/dynamisches Feld | Der Metadatenschlüssel, der in der Anforderung festgelegt werden soll. | Nein | Statisches/dynamisches Feld | |
API-Anforderung > Metadaten > Wert2 | Statisches/dynamisches Feld | Der Metadatenwert, der in der Anforderung festgelegt werden soll. | Nein | Statisches/dynamisches Feld |
1Deskriptor: Zum Serialisieren des Anforderungstexts benötigen Sie einen base64-codierten Deskriptor der PROTO-Datei.
Verwenden Sie den folgenden Befehl, um den Deskriptor zu generieren, und ersetzen Sie dabei <proto-file>
durch den Namen Ihrer PROTO-Datei:
protoc --descriptor_set_out=/dev/stdout --include_imports <proto-file> | base64 | tr '\n' ' ' | sed 's/[[:space:]]//g'
Verwenden Sie die Ausgabe des vorherigen Befehls als descriptor
in der Konfiguration.
2API-Anforderung >Metadaten: Jedes Element im Metadatenarray ist ein Schlüsselwertpaar. Sie können den Schlüssel oder Wert dynamisch, basierend auf dem Inhalt der eingehenden Nachricht, oder als statische Zeichenfolge festlegen.