返回
将EdgeX Foundry设备数据导出到MQTT和HTTP服务
后端
2023-12-08 18:53:57
简介
EdgeX Foundry是一个开源的物联网平台,可用于将设备连接到云端并管理设备数据。在之前的文章中,我们介绍了如何将设备连接到EdgeX Foundry。在本文中,我们将介绍如何将设备数据导出到MQTT或HTTP服务。
配置导出器
要将设备数据导出到MQTT或HTTP服务,我们需要编辑EdgeX Foundry的配置文件。EdgeX Foundry的配置文件位于/etc/edgex/edgex.conf
。
要配置MQTT导出器,我们需要在edgex.conf
文件中添加以下内容:
[mqtt]
enable = true
host = "localhost"
port = 1883
username = ""
password = ""
topic = "edgex/data"
要配置HTTP导出器,我们需要在edgex.conf
文件中添加以下内容:
[http]
enable = true
host = "localhost"
port = 8080
path = "/data"
启动导出器
配置好导出器后,我们需要启动导出器。我们可以通过以下命令启动MQTT导出器:
edgex-mqtt-export -c /etc/edgex/edgex.conf
我们可以通过以下命令启动HTTP导出器:
edgex-http-export -c /etc/edgex/edgex.conf
验证导出器是否已启动
要验证导出器是否已启动,我们可以使用以下命令:
netstat -tlnp | grep edgex
如果导出器已启动,我们将看到以下输出:
tcp 0 0 0.0.0.0:1883 0.0.0.0:* LISTEN 55095/edgex-mqtt-export
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 55097/edgex-http-export
导出设备数据
配置并启动导出器后,我们可以将设备数据导出到MQTT或HTTP服务。我们可以通过以下命令将设备数据导出到MQTT服务:
curl -X POST -H "Content-Type: application/json" -d '{"id": "my-device-id", "value": 10}' http://localhost:8080/data
我们可以通过以下命令将设备数据导出到HTTP服务:
mosquitto_pub -t edgex/data -m '{"id": "my-device-id", "value": 10}'
结论
在本文中,我们介绍了如何将EdgeX Foundry设备数据导出到MQTT或HTTP服务。首先,我们配置了MQTT或HTTP导出器。然后,我们启动了导出器并验证是否已将设备数据导出到相应的服务。最后,我们通过命令将设备数据导出了MQTT或HTTP服务。