手头的设备一旦多起来,日常巡检就成了一件特别耗精力的事。到了 2026 年 6 月,我桌面上有主力开发机,机柜和内网里有 PVE 宿主机、好几台常驻跑业务的 Linux 与 Windows 虚拟机,再加上外面的云服务器。每次觉得某个服务响应变慢,想看看是哪台机器 CPU 跑满了、硬盘快炸了还是网卡流量不对劲,都得挨个打开终端连 SSH 敲 htop,或者切好几个不同的云面板去翻。

市面上的现成探针要么只管 Linux 不管 Windows 桌面,要么界面太简陋、没有顺手的手机客户端。既然每天都要看,不如自己动手做一套趁手的私有监控。

定名「观澜」与中枢架构落地

2026 年 6 月 23 日(Commit 54cfde6),我正式新建了跨平台硬件状态监控项目 Device State Console,仓库定为 IGNGserver/guanlan-monitor,中文名取“观硬件运行之波澜”的意思,叫作**「观澜」**。

为了兼顾实时推送和历史回溯,我把后端中枢拆成了很务实的组合:用 Fastify 提供接口,Socket.IO 负责毫秒级状态广播,MySQL 落盘存历史聚合数据,Redis 扛住高频上报的实时读模型;被控端则先用轻量的 Go 采集脚本往中枢推流。这样不管是内网机器还是云主机,只要跑起采集端,就能在一个界面里汇总。

隔天打出 Android v0.1.0 与中文网卡乱码排坑

服务端跑通的第二天,也就是 6 月 24 日(Commit 84ea65e),我就顺手把配套的 Android 客户端 v0.1.0 正式签名包打出来了。手机端支持局域网 http:// 直连中枢,点开就能看到每台设备的在线状态、核心指标胶囊卡片和半屏分页图表,躺在沙发上掏出手机就能瞄一眼机房是不是安稳。

第一版接上 Windows 机器时还踩了个很典型的编码坑:采集脚本调 PowerShell 读出来的中文网卡名称(比如“以太网”或“本地连接”)全变成了乱码。我紧接着在随后的补丁里强制统一了控制台输出的 UTF-8 编码页,让 Windows 和 Linux 设备的网卡、磁盘指标都能规规矩矩地显示在看板上。