我目前正在使用基于 Azure-IoT-Hub-C-SDK MQTT 示例以及示例本身的程序。在我的 Ubuntu 机器上,启动程序后,我得到一个重复的连接错误:
./iotsdk_linux/serializer/samples/devicetwin_simplesample/devicetwin_simplesample Info: IoT Hub SDK for C, version 1.1.21
Error: Time:Fri Aug 18 19:39:22 2017 File:/home/user/workspaceMisc/azure-iot-sdk-c/c-utility/adapters/socketio_berkeley.c Func:socketio_open Line:676 Failure: select failure.
Info: Closing tlsio from a state other than TLSIO_STATE_EXT_OPEN or TLSIO_STATE_EXT_ERROR
Error: Time:Fri Aug 18 19:39:22 2017 File:/home/user/workspaceMisc/azure-iot-sdk-c/c-utility/src/tlsio_openssl.c Func:on_underlying_io_open_complete Line:688 Invalid tlsio_state. Expected state is TLSIO_STATE_OPENING_UNDERLYING_IO.
Error: Time:Fri Aug 18 19:39:22 2017 File:/home/user/workspaceMisc/azure-iot-sdk-c/c-utility/src/tlsio_openssl.c Func:tlsio_openssl_open Line:1202 Failed opening the underlying I/O.
Error: Time:Fri Aug 18 19:39:22 2017 File:/home/user/workspaceMisc/azure-iot-sdk-c/umqtt/src/mqtt_client.c Func:mqtt_client_connect Line:974 Error: io_open failed
Error: Time:Fri Aug 18 19:39:22 2017 File:/home/user/workspaceMisc/azure-iot-sdk-c/iothub_client/src/iothubtransport_mqtt_common.c Func:SendMqttConnectMsg Line:1519 failure connecting to address XXXX.azure-devices.net.
Reported state will be send to IoTHub
press ENTER to end the sample
simplesample_mqtt 和 devicetwin_simplesample 都会发生这种情况。有时错误不会停止,我没有机会尝试该程序。我只更改了示例中的连接字符串。AMQP 示例 (simplesample_amqp) 没有显示任何连接错误,即使在多次启动后也能正常工作。在我的 Yocto 板上,每次启动基于 SDK 示例构建的自定义 MQTT 应用程序时,我都会看到一些连接错误。
有谁知道可能的原因?我不知道它是由 SDK、IoT 中心还是我的本地设置(Ubuntu、Yocto?)引起的。即使使用蜂窝连接,我也会收到此错误,有时在运行一段时间后也会重新出现。
请,如果您认为我应该发布更多信息,请提出要求。现在我只是不知道从哪里开始。
更新:现在,什么都没有了,我只收到错误,应用程序不再连接。在此处查看 github 上的问题: https ://github.com/Azure/azure-iot-sdk-c/issues/214