Publier des données sur un MQTT broker à l’aide de la préversion d’Azure IoT Data Processor
Important
Opérations Azure IoT (préversion) – activé parc Azure Arc est actuellement en PRÉVERSION. Vous ne devez pas utiliser ce logiciel en préversion dans des environnements de production.
Pour connaître les conditions juridiques qui s’appliquent aux fonctionnalités Azure en version bêta, en préversion ou plus généralement non encore en disponibilité générale, consultez l’Avenant aux conditions d’utilisation des préversions de Microsoft Azure.
Utilisez la destination MQ pour publier des messages traités sur un MQTT broker, tel qu’une instance de préversion d’Azure IoT MQ, à la périphérie. Le processeur de données se connecte à un MQTT broker à l’aide de MQTT v5.0. La destination publie des messages sur le MQTT broker à mesure que l’index les reçoit. La destination MQ ne prend pas en charge le traitement par lots.
Prérequis
Pour configurer et utiliser une phase de pipeline de destination, vous avez besoin d’une instance déployée d’Azure IoT Data Processor (préversion) qui inclut le composant Data Processor facultatif.
Configuration de l’index de destination
La configuration JSON de l’index de destination MQ définit les détails de l’étape. Pour créer l’index, vous pouvez interagir avec l’interface utilisateur basée sur le formulaire ou fournir la configuration JSON sous l’onglet Advanced (Avancé) :
Champ | Type | Description | Obligatoire | Par défaut | Exemple |
---|---|---|---|---|---|
Nom | Chaîne | Nom à afficher dans l’interface utilisateur du processeur de données. | Oui | - | MQTT broker output |
Description | Chaîne | Description conviviale de ce que fait l’index. | Non | Write to topic default/topic1 |
|
Service Broker | Chaîne | Adresse du répartiteur. | Oui | - | mqtt://mqttEndpoint.cluster.local:1111 |
Authentification | Chaîne | Détails de l’authentification pour se connecter au MQTT broker. None /Username/Password /Service account token (SAT) |
Oui | Service account token (SAT) |
Username/Password |
Nom d’utilisateur | Chaîne | Nom d’utilisateur à utiliser quand Authentication est défini sur Username/Password . |
Non | - | myusername |
Mot de passe | Chaîne | La référence secrète du mot de passe à utiliser lorsque Authentication est défini sur Username/Password . |
Non | - | mysecret |
Rubrique | Static/Dynamic | Définition de la rubrique. Chaîne si le type est statique, chemin jq si le type est dynamique. | Oui | - | ".topic" |
Format de données 1 | Chaîne | Format vers laquelle sérialiser les messages. | Oui | - | Raw |
Propriétés de l’utilisateur | Une liste de paires clé/valeur | Liste des propriétés utilisateur personnalisées à définir sur chaque message MQTT. Peut inclure des informations statiques ou des données de chaque message. | Non | [] |
| Nouvelle tentative | Nouvelle tentative | La stratégie de nouvelles tentatives à utiliser. | Non | default
| fixed
|
1Format de données : utilisez le sérialiseur intégré du processeur de données pour sérialiser vos messages dans les Formats suivants avant de publier des messages dans le MQTT broker :
Raw
JSON
JSONStream
CSV
Protobuf
MessagePack
CBOR
Sélectionnez Raw
lorsque vous n’avez pas besoin de sérialisation. Raw envoie les données au MQTT broker dans son format actuel.
Exemple de configuration
L’exemple JSON suivant montre une configuration complète de l’index de destination MQ qui écrit l’intégralité du message dans la rubrique pipelineOutput
MQ :
{
"displayName": "MQ - 67e929",
"type": "output/mqtt@v1",
"viewOptions": {
"position": {
"x": 0,
"y": 992
}
},
"broker": "tls://aio-mq-dmqtt-frontend:8883",
"qos": 1,
"authentication": {
"type": "serviceAccountToken"
},
"topic": {
"type": "static",
"value": "pipelineOutput"
},
"format": {
"type": "json",
"path": "."
},
"userProperties": [],
"retry": {
"type": "fixed",
"interval": "20s",
"maxRetries": 4
}
}
La configuration définit ce qui suit :
- L’authentification est effectuée à l’aide du jeton de compte de service.
- La rubrique est une chaîne statique appelée
pipelineOutput
. - Le format de sortie est
JSON
. - Le chemin d’accès au format
.
consiste à s’assurer que l’ensemble du message du processeur de données est écrit dans MQ. Pour écrire uniquement la charge utile, remplacez le chemin d’accès par « .payload ».
Exemple
L’exemple suivant montre un exemple de message d’entrée à l’étape de destination MQ :
{
"payload": {
"Batch": 102,
"CurrentTemperature": 7109,
"Customer": "Contoso",
"Equipment": "Boiler",
"IsSpare": true,
"LastKnownTemperature": 7109,
"Location": "Seattle",
"Pressure": 7109,
"Timestamp": "2023-08-10T00:54:58.6572007Z",
"assetName": "oven"
},
"qos": 0,
"systemProperties": {
"partitionId": 0,
"partitionKey": "quickstart",
"timestamp": "2023-11-06T23:42:51.004Z"
},
"topic": "quickstart"
}
Contenu connexe
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour