मैंने एक एज़ूर आईओटी एज मॉड्यूल स्थापित किया है, और इसे एज़ूर के माध्यम से आईओटी एज रनटाइम पर तैनात करते समय यह काफी ठीक काम करता है।

हालांकि, मैं स्थानीय रूप से डीबग करते समय मॉड्यूल के साथ बातचीत करने का तरीका नहीं ढूंढ पा रहा हूं। मुझे जो करना है वह उस पर प्रत्यक्ष विधियों का आह्वान करना है और चलने के दौरान मॉड्यूल जुड़वां को संशोधित करना है।

इसके अतिरिक्त मेरे पास प्रश्न है: स्थानीय डिबगिंग मॉड्यूल वास्तव में कहां से जुड़ता है? क्या यह विजुअल स्टूडियो में "आईओटी एज टूल्स" में कॉन्फ़िगर की गई कनेक्शन स्ट्रिंग का उपयोग करके एज़ूर आईओटी एज डिवाइस से कनेक्शन खोलता है? कम से कम ऐसा तो नहीं लगता, क्योंकि यह Azure IoT हब से मॉड्यूल ट्विन की सेटिंग्स को नहीं पढ़ता है।

अन्य प्रश्न: विजुअल स्टूडियो में एक एज समाधान पर, जब मैं प्रोजेक्ट नोड पर राइट क्लिक करता हूं, तो मुझे एज़ूर कंटेनर रजिस्ट्री में "मॉड्यूल बनाएं और पुश करें" और इसे सिम्युलेटर में चलाने की संभावना है। मुझे लगता है कि इसे सिम्युलेटर में चलाना इसे डिबग करने जैसा नहीं है?

अग्रिम बहुत बहुत धन्यवाद!

2
kolbi 18 नवम्बर 2019, 14:07

1 उत्तर

सबसे बढ़िया उत्तर

जब आप विजुअल स्टूडियो में किसी मॉड्यूल को डिबग करते हैं, तो टेम्प्लेट एकल मॉड्यूल मोड में iotedgehubdev (उर्फ सिम्युलेटर) शुरू करता है।

इस मोड के साथ आप अपने मॉड्यूल को एक आरईएसटी एपीआई के माध्यम से संदेश भेज सकते हैं

curl --header "Content-Type: application/json" --request POST --data '{"inputName": "<input_name>","data":"hello world"}' http://localhost:53000/api/v1/messages

यह आपके मॉड्यूल को भी लॉन्च करता है और इसे "लक्ष्य" नाम देता है

iotedgehubdev modulecred -l -m "target"
   EdgeHubConnectionString=HostName=<hostname>;GatewayHostName=localhost;DeviceId=<your-edge-device-id>;ModuleId=target;SharedAccessKey=<key>
   EdgeModuleCACertificateFile=C:\ProgramData\iotedgehubdev\data\certs\edge-device-ca\cert\edge-device-ca.cert.pem

मॉड्यूल लक्ष्य नीला पोर्टल - iothub में उपलब्ध होगा। आप विधियों को कॉल करने और जुड़वां मॉड्यूल बदलने के लिए इंटरफ़ेस का उपयोग कर सकते हैं यहां छवि विवरण दर्ज करें

और अंत में, सिम्युलेटर में चलाना डिबगिंग के समान नहीं है। जब आप उस कमांड का उपयोग करते हैं, तो वीएस मोड सिम्युलेटर में iotedgehubdev चलाता है, जो आपकी तैनाती फ़ाइल में सभी मॉड्यूल चलाएगा और मार्ग, कॉन्फ़िगरेशन इत्यादि लागू करेगा।

आप अभी भी मॉड्यूल को डीबग कर सकते हैं लेकिन आपको रिमोट डीबगर का उपयोग करना होगा जो एक अन्य विषय है।

2
Zied 19 नवम्बर 2019, 19:03