CentOS上使用Mosquitto实现Mqtt主题消息发布和订阅mqtt主题消息连同时间戳记录到文件

ops/2024/9/24 19:24:42/

场景

CentOS上使用rpm离线安装Mosquitto(Linux上Mqtt协议调试工具)附资源下载:

CentOS上使用rpm离线安装Mosquitto(Linux上Mqtt协议调试工具)附资源下载-CSDN博客

上面介绍了mosquitto的离线安装。

如果业务场景中需要订阅某mqtt主题的消息并将收到消息的时间以及消息内容记录到

文件中,便于数据分析。

如果是在windows电脑上可以参考如下

Winform中使用MQTTnet实现MQTT的服务端和客户端之间的通信以及将订阅的消息保存到文件:

Winform中使用MQTTnet实现MQTT的服务端和客户端之间的通信以及将订阅的消息保存到文件_mqttnet publishasync-CSDN博客

如果是在linux上可以使用mosquitto加脚本的方式实现。

注:

博客:
霸道流氓气质-CSDN博客

实现

CentOS上Mosquitto服务的启动、停止、查看状态

上面搭建mosquitto的服务后,需要启动其服务

启动服务器

sudo service mosquitto start

查看状态

sudo service mosquitto status

关闭服务器

sudo service mosquitto stop

Mosquitto实现发布MQTT主题消息、订阅mqtt主题消息的命令

服务启动成功后进行发布mqtt主题消息和订阅测试,用于本地调试测试用

mosquitto源码地址:

GitHub - eclipse/mosquitto: Eclipse Mosquitto - An open source MQTT broker

文档中明确指出发布和订阅主题的指令

发布:

mosquitto_pub -t 'test/topic' -m 'hello world'

订阅:

mosquitto_sub -t 'test/topic' -v

更多订阅指令说明,参照:

mosquitto_sub man page | Eclipse Mosquitto

下面在同一台服务器进行测试

发布mqtt主题与消息

mosquitto_pub -h localhost -t "test" -u badao -P badao -m "hello"

订阅主题与接受消息

mosquitto_sub -h localhost -t "test" -u badao -P badao

测试结果

Linux中实现记录MQTT主题消息内容和当前时间到文件中的指令

执行如下指令

mosquitto_sub -h localhost -t "test" -u badao -P badao | while read payload; do echo "$(date): $payload" >> mqtt_data.log; done

然后再次发布主题消息,在上面指令执行的目录下查看mqtt_data.log文件内容即可


http://www.ppmy.cn/ops/115418.html

相关文章

使用双向 LSTM 和 CRF 进行中文命名实体识别

使用双向 LSTM 和 CRF 进行中文命名实体识别 在自然语言处理中,命名实体识别(Named Entity Recognition,NER)是一项重要的任务,它旨在识别文本中的命名实体,如人名、地名、组织机构名等。本文将介绍如何使用双向 LSTM(Long Short-Term Memory)和 CRF(Conditional Ran…

力扣 困难 154.寻找旋转排序数组中的最小值 II

文章目录 题目介绍题解 题目介绍 题解 题源: 153.寻找旋转排序数组中的最小值 在此基础上,进行二分之前,单独处理一下左指针和最后一个数相同的情况就好了。 class Solution {public int findMin(int[] nums) {int left 0, right nums.le…

HTML常用的文本标签

常用文本标签 <span>: 元素没有特定含义 <b>: 定义粗体文字 <i>: 定义斜体文字 <em>: 定义着重文字 <strong>: 定义加重语气 <del>: 定义删除字 <span>文本标签</span><br><b>文本标签</b><b…

带你了解Linux系统数据恢复的方法

在Linux系统中&#xff0c;意外删除文件或文件损坏是一种常见情况&#xff0c;但幸运的是&#xff0c;您可以采取一些措施来尝试恢复这些文件。让我们一起来详细了解下Linux系统数据恢复的方法! 方法一&#xff1a;使用Undelete工具进行文件恢复 Undelete工具是一种常用的文件恢…

【计算机组成原理】实验一:运算器输入锁存器数据写实验

目录 实验要求 实验目的 主要集成电路芯片及其逻辑功能 实验原理 实验内容及步骤 实验内容 思考题 实验要求 利用CP226实验箱上的K16&#xff5e;K23二进制拨动开关作为DBUS数据输入端&#xff0c;其它开关作为控制信号的输入端&#xff0c;将通过K16&#xff5e;K23设定…

Django框架全面指南

Django是一个高级的Python Web框架,它鼓励快速开发和清晰、实用的设计。本指南将全面介绍Django的核心概念和使用方法。 1. Django简介 Django遵循"batteries included"哲学,提供了Web开发所需的几乎所有功能。它的主要特点包括: ORM(对象关系映射)URL路由模板…

道可云人工智能元宇宙每日资讯|全球首个三体四维空间落地成都

道可云元宇宙每日简报&#xff08;2024年9月24日&#xff09;讯&#xff0c;今日元宇宙新鲜事有&#xff1a; 全球首个三体四维空间落地成都 日前&#xff0c;全球首个以三体IP为启发的线下元宇宙体验空间——“三体四维空间”正式落地成都&#xff0c;这一创意空间融合了科幻…

观察者模式(发布-订阅模式)

用途&#xff1a;可用于拦截过滤器 消息推送接口&#xff1a; public interface Subject {//添加订阅者void addObserver(Observer observer);//移除订阅者void removeObserver(Observer observer);//通知订阅者void notifyObservers(String message); } 消息推送实现着: ​…