نشر البيانات إلى وسيط MQTT باستخدام معاينة معالج بيانات Azure IoT

هام

معاينة عمليات Azure IoT - التي تم تمكينها بواسطة Azure Arc قيد المعاينة حاليا. يجب عدم استخدام برنامج المعاينة هذا في بيئات الإنتاج.

للحصول على الشروط القانونية التي تنطبق على ميزات Azure الموجودة في الإصدار التجريبي، أو المعاينة، أو التي لم يتم إصدارها بعد في التوفر العام، راجع شروط الاستخدام التكميلية لمعاينات Microsoft Azure.

استخدم وجهة MQ لنشر الرسائل المعالجة إلى وسيط MQTT، مثل مثيل Azure IoT MQ Preview، على الحافة. يتصل معالج البيانات كوسيط MQTT باستخدام MQTT v5.0. تنشر الوجهة الرسائل إلى وسيط MQTT أثناء تلقي المرحلة لها. لا تدعم وجهة MQ الإرسال في دفعات.

المتطلبات الأساسية

لتكوين مرحلة مسار الوجهة واستخدامها، تحتاج إلى مثيل منشور من Azure IoT Data Processor Preview يتضمن مكون معالج البيانات الاختياري.

تكوين مرحلة الوجهة

يحدد تكوين JSON لمرحلة وجهة MQ تفاصيل المرحلة. لتأليف المرحلة، يمكنك إما التفاعل مع واجهة المستخدم المستندة إلى النموذج، أو توفير تكوين JSON في علامة التبويب خيارات متقدمة:

الحقل نوع الوصف مطلوبة افتراضي مثال
الاسم السلسلة‬ اسم لإظهاره في واجهة مستخدم معالج البيانات. ‏‏نعم‬ - MQTT broker output
‏‏الوصف السلسلة‬ وصف سهل الاستخدام لما تقوم به المرحلة. لا Write to topic default/topic1
الوسيط السلسلة‬ عنوان الوسيط. ‏‏نعم‬ - mqtt://mqttEndpoint.cluster.local:1111
المصادقة السلسلة‬ تفاصيل المصادقة للاتصال بوسيط MQTT. None/Username/Password/Service account token (SAT) ‏‏نعم‬ Service account token (SAT) Username/Password
اسم مستخدم السلسلة‬ اسم المستخدم الذي يجب استخدامه عند Authentication تعيينه إلى Username/Password. لا - myusername
كلمة المرور السلسلة‬ المرجع السري لكلمة المرور لاستخدامه عند Authentication تعيين إلى Username/Password. لا - mysecret
الموضوع ثابت/ديناميكي تعريف الموضوع. سلسلة إذا كان النوع ثابتا، مسار jq إذا كان النوع ديناميكيا. ‏‏نعم‬ - ".topic"
تنسيقالبيانات 1 السلسلة‬ التنسيق المراد تسلسل الرسائل إليه. ‏‏نعم‬ - Raw
خصائص المستخدم قائمة أزواج المفاتيح/القيم قائمة بخصائص المستخدم المخصصة لتعيينها على كل رسالة MQTT. يمكن أن تتضمن معلومات ثابتة أو بيانات من كل رسالة. لا []

| إعادة المحاولة | إعادة المحاولة | نهج إعادة المحاولة لاستخدامه. | لا | default | fixed |

1تنسيق البيانات: استخدم التسلسل المضمن لمعالج البيانات لتسلسل رسائلك إلى التنسيقات التالية قبل نشر الرسائل إلى وسيط MQTT:

  • Raw
  • JSON
  • JSONStream
  • CSV
  • Protobuf
  • MessagePack
  • CBOR

حدد Raw عندما لا تحتاج إلى إنشاء تسلسل. يرسل Raw البيانات إلى وسيط MQTT بتنسيقه الحالي.

عينة التكوين

يوضح مثال JSON التالي تكوين مرحلة وجهة MQ كاملة تكتب الرسالة بأكملها إلى موضوع MQ pipelineOutput :

{
    "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
    }
}

يحدد التكوين ما يلي:

  • تتم المصادقة باستخدام الرمز المميز لحساب الخدمة.
  • الموضوع هو سلسلة ثابتة تسمى pipelineOutput.
  • تنسيق الإخراج هو JSON.
  • مسار التنسيق هو . التأكد من كتابة رسالة معالج البيانات بأكملها إلى MQ. لكتابة الحمولة فقط، قم بتغيير المسار إلى ''.payload'.

مثال

يوضح المثال التالي نموذج رسالة إدخال إلى مرحلة وجهة 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"
}