# MQTT-aliyun **Repository Path**: Yaoc0522/mqtt-aliyun ## Basic Information - **Project Name**: MQTT-aliyun - **Description**: 阿里云 MQTT 消息服务,调试小工具 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-09-08 - **Last Updated**: 2025-12-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: 阿里云MQTT测试工具 ## README # MQTT_aliyun ## 项目简介 MQTT_aliyun 是一个基于 .NET Framework 4.8 的 Windows Forms 应用,集成了阿里云 MQTT 消息服务,支持高并发消息收发、日志记录、主题订阅等功能。项目采用 NLog 进行高性能异步日志写入,适合物联网、消息推送等场景。 --- ## 主要特性 - 支持阿里云 MQTT 协议接入,参数可配置 - 支持多主题订阅与消息收发 - 消息收发日志可选保存,支持高并发异步写入 - 日志文件自动归档,支持按天或按大小切分 - 友好的 Windows 界面,参数持久化 - 支持客户端 ID 一键刷新 --- ## 环境要求 - .NET Framework 4.8 - Visual Studio 2022 - Windows 7/10/11 --- ## 依赖组件 - [uPLibrary.Networking.M2Mqtt](https://github.com/eclipse/paho.mqtt.m2mqtt)(MQTT 协议支持,已归档,建议优先使用 [Paho MQTT](https://github.com/eclipse/paho.mqtt.dotnet) 或其维护分支) - [NLog](https://nlog-project.org/)(高性能日志记录) --- ## 快速开始 1. **克隆项目** - 推荐国内用户使用 Gitee,国外用户可用 GitHub 镜像(如有)。 ```bash git clone https://gitee.com/Yaoc0522/mqtt-aliyun.git ``` 2. **打开解决方案** - 用 Visual Studio 2022 打开项目。 3. **还原 NuGet 包** - 右键解决方案,选择“还原 NuGet 包”。 - `NLog.config` 已内置于项目,日志文件默认写入 `bin\Debug` 或 `bin\Release` 目录。 - **生产环境建议:** 为避免日志与程序文件混放,可在 `NLog.config` 中修改 `` 属性,将日志路径设置为如 `D:\Logs\MQTT_aliyun\msglog.txt` 等独立目录,提升安全性与可维护性。 - `NLog.config` 已内置于项目,日志文件默认写入 `bin\Debug` 或 `bin\Release` 目录。 - 如需自定义日志路径或切分规则,可修改 `NLog.config` 的 ``、`archiveAboveSize` 等参数。 5. **运行程序** - 配置阿里云 MQTT 相关参数,点击“连接”即可使用。 --- ## 日志配置说明 - 日志文件名:`msglog.txt`(可自定义) - 日志切分:支持按天归档(默认),可按需配置为按大小切分(如 50MB) - 异步写入:采用 ``,高并发下日志不阻塞主线程 - 内部日志:`nlog-internal.log`,用于排查日志写入异常 **示例:按 50MB 切分日志文件,文件名带日期** ```xml ``` --- ## 常见问题 - **日志文件未生成?** - 检查 `NLog.config` 是否已复制到输出目录,日志路径是否有写入权限。 - 查看 `nlog-internal.log` 是否有异常信息。 - **日志文件被占用?** - 避免用记事本、Excel 等独占方式打开日志文件。 - 多进程并发写同一日志文件时建议分文件或用网络日志目标。 --- ## 参考文档 - [阿里云 MQTT 文档](https://help.aliyun.com/document_detail/48271.html) - [NLog 官方文档](https://nlog-project.org/) - [M2Mqtt 官方文档](https://github.com/eclipse/paho.mqtt.m2mqtt) --- **本项目适用于高并发消息收发与日志场景,欢迎反馈与贡献。**