问题标签 [azure-iot-edge]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2775 浏览

azure-functions - Azure EventHubTrigger 函数应用中的偏移量

预期: 使用带有 EventHubTrigger-CSharp 模板的函数应用程序会在新事件进入时运行。

实施: 使用来自https://azure.microsoft.com/en-us/documentation/articles/functions-bindings-event-hubs/的非常基本的示例

结果: 解释的方法:

确实在事件队列中传递“第一个”而不是当前的。

额外的:

  • 我添加了一个消费者组(所以不从 $Default 读取)
  • 根据此博客:http ://www.yourcloudbuddy.com/2016/04/azure-functions-and-event-hubs.html '目前无法将其配置为启动特定偏移量'。

问题: 如何在我的函数应用的中心接收最新事件?

更多信息: 我需要将新信号从事件中心转发到外部 mqtt api(到目前为止有效)。可能我需要另一种方法?

0 投票
1 回答
1256 浏览

azure - Azure IoT Edge 设置成功完成,但未启动 edgeAgent docker 映像

我正在尝试在 Windows 10 机器上安装 Azure IoT Edge 运行时。我已按照此处的说明进行操作,包括调用iotedgectl start. 当我执行下一步并运行docker ps以验证edgeAgent容器是否正在运行时,我得到一个空列表。在运行时说它成功启动但没有任何东西运行之前,是否有任何机构遇到过这样的事情docker?我已在 IoT 中心确认我的 IoT 设备没有成功连接任何东西。

** 编辑 ** :阅读一些评论后,我找到了 docker 日志。(不幸的是,从详细日志开始似乎没有帮助,因为容器似乎正常启动,但知道它很有帮助,所以谢谢@RomanKiss)容器似乎成功启动,但无法通过 AMQP 连接到 IoT 中心,并且关闭:

2017-12-05 22:47:10 [INF] - Edge agent attempting to connect to IoT Hub via AMQP... 2017-12-05 22:47:11 [INF] - Edge agent attempting to connect to IoT Hub via AMQP over WebSocket...

我已经验证连接字符串是正确的。我正在等待运营部门关于调查 AMQP 端口 5671 上的流量的回复。Docker 容器目前正在与 Linux 容器一起运行。

输出docker ps -a

C:\Users\myuser\Downloads>docker ps --all CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 26c1d3363ba0 microsoft/azureiotedge-agent:1.0-preview "/usr/bin/dotnet M..." 8 seconds ago Exited (1) 3 seconds ago edgeAgent

0 投票
1 回答
445 浏览

azure-iot-edge - 无法设置 Azure IoT Edge 运行时:主机名无效

我在 Azure 上运行了标准 D2s v3(2 vcpus,8 GB 内存),并安装了 Python、Docker 和 iotedgectl。

当我跑

我收到以下错误

有任何想法吗?

0 投票
1 回答
808 浏览

azure - 具有下游设备的 IoT Edge 网关

我创建了一个在 Docker 中运行的 Azure IoT 边缘网关,其中包含一个自定义模块,该模块只是一个传递(获取消息并将其发送到上游)。

我创建了一个简单的 .net 控制台应用程序来向网关发送消息,以便对其进行评估。

这是我在控制台应用程序中的代码。

看来,当调用 SendEventAsync 方法时,它将永远挂起。我等了 5 分钟,应用程序一直在等待。如果我从连接字符串中删除 GatewayHostName,它会立即执行,并且我的消息会直接发送到 Azure 中的 IoT 中心。

为什么它不会将消息发送到 IoT Edge 网关?

0 投票
1 回答
2673 浏览

docker - 如何为 Docker 运行命令指定 --device 选项?

我正在测试新的 Azure IoT Edge V2。我需要使用这样的 --device 选项运行部署到边缘设备的 Docker 映像(以访问串行端口):

--device从 Azure 门户创建新部署时如何指定选项?

0 投票
2 回答
877 浏览

c# - 消息未在 Edge 模块之间路由

更新

为了清楚起见,更新我的问题。

回购: https ://github.com/aaronprince05/IoTEdgeMes​​saging

我有 2 个模块:MessageGeneratorModule、MessageReceiverModule。

MessageGeneratorModule 发送:
批量发送 1000 条消息,然后等待 4 分钟
1 条消息/分钟,持续 2 分钟
,然后 1 条消息/秒,持续 1 分钟
,然后 20 条消息/秒,持续 1 分钟

MessageReceiverModule 是标准的 IoT Edge 模块样板代码,它只接收消息并记录它们。我已经删除了向上游发送消息的代码。

我在 IoT Edge 中有一个路由配置为

我在这里遇到了某种类型的限制,消息似乎没有立即传递给接收者。相反,大约有 10-20 条消息被传递。下一组 10 条消息可以通过发送另一条消息来触发接收器来强制。(注意下面的时间戳)

其余的日志可以在 repo 中找到。您应该能够拉下代码并运行它以查看异常情况。

0 投票
1 回答
2547 浏览

azure-iot-hub - 417 - This device has an empty configuration for the edge agent?

I have created an Azure IoT Edge device by following the steps outlined here:

https://docs.microsoft.com/en-us/azure/iot-edge/quickstart-linux

When I create a deployment and check the IoT Edge device I see the following error message:

What am I missing?

0 投票
2 回答
342 浏览

azure-iot-edge - IoT Edge 模块实例发现调用另一个模块上的方法所需的 ID 的首选方式是什么?

在 IoT Edge 网关的新预览版中,一个模块可以通过 InvokeDeviceMethodAsync 调用另一个模块上的方法。这需要一个设备 ID 和一个模块 ID 作为参数,大概是为了告诉 Edge 如何路由呼叫。在同一网关内调用时,设备 ID 参数应为 IoT Edge 中心网关实例的设备 ID。模块 id 应该是从 IoT Edge 下推到网关的模块实例的模块 id。对这些 id 进行硬编码很容易,但显然是不可取的。您可以将硬编码值放在模块加载时读取的配置文件中,这样问题较少但仍然不理想。有没有办法以编程方式发现/填充所需的值?部署 json 配置是否在部署时支持变量替换或类似的填充实例 ID?

0 投票
2 回答
623 浏览

azure-iot-edge - 为 IoT-Edge 透明网关配置证书时出现问题

我在这里遵循指示:https ://docs.microsoft.com/en-us/azure/iot-edge/how-to-create-transparent-gateway 。

当我使用 OpenSSL 和“New-CACertsEdgeDevice myGateway”命令创建证书时,我最终得到一个基于椭圆曲线的私钥,当我使用消息配置边缘网关时该私钥失败

“目前仅支持 RSA”。

我修改了 ca-certs.ps1 中的 New-CACertsCertChain 脚本(将 $useEcc 变量设置为 $false)并重新运行。该脚本成功,但现在 New-CACertsEdgeDevice 脚本失败,并显示:

New-SelfSignedCertificate:无法将“System.Object[]”转换为参数“Signer”所需的“Microsoft.CertificateServices.Commands.Certificate”类型。不支持指定的方法。

知道我做错了什么吗?

0 投票
1 回答
1125 浏览

azure-iot-hub - 当设备孪生报告属性发生变化时,有没有办法获取事件?

查看 DeviceClient、ServiceClient 和 RegistryManager 的 api,当设备的报告属性发生更改时,似乎没有任何明显的方法可以获取事件/回调。因此,如果没有不断轮询,似乎消耗 IoTHub 信息的东西不会有任何想法属性已经改变。这似乎相当低效且容易出错。我错过了什么?