Telegraf有一个功能是可以推送MQTT数据到Broker的,我们试试。
尝试的目的是,通过一个树莓派推送树莓派系统信息到另外一个树莓派上。
处理流程如下:
- Telegraf配置发送数据到Broker
- 检查数据发送的情况
- 检查接收方端口是否收到数据
- 订阅主题查看输出
配置Telegraf
首先要配置Telegraf的out-mqtt,参考这里配置:https://github.com/influxdata/telegraf/blob/master/plugins/outputs/mqtt/README.md
有三个参数是必须的:
- servers: 一个mqtt broker列表,例如. -> ["{host}:{port}","{host2}:{port2}"]
- topic_prefix: topic format <topic_prefix>/<hostname>/<pluginname>/ ( ex: prefix/web01.example.com/mem)
- qos: 0 1 2
配置好之后,就可以发送数据了。
检查数据发送的情况
pi@raspberrypi:/etc/telegraf $ telegraf -debug -config telegraf.conf

查看端口是否接收到了数据。
sudo tcpdump -i any -w telegraf-mqtt.pcap 'port 1883'

tail -f telegraf-mqtt.pcap
可以看到已经有数据过来了。

查看Broker数据接入
然后 查看Mosquitto的日志,看看是不是接入了。

订阅主题查看输出
查看接收到的信息
mosquitto_sub -t thingspanel/raspberrypi/system -v
