
AKS1st/dsh-sysmon
30最近提交 2026年8月15日
dsh-sysmon DSH 插件
dsh-sysmon 在 DSH Web 界面右下角添加一个固定悬浮窗,每秒刷新显示 CPU、内存和磁盘利用率。通过颜色阈值(浅灰、橙色、红色)提示负载水平,服务端缓存保证低开销。
如何安装 dsh-sysmon DSH 插件
dsh plugin --profile web add github:AKS1st/dsh-sysmon复制不会执行命令。安装 dsh-sysmon DSH 插件前请核对仓库和版本。
dsh-sysmon DSH 插件数据来源
dsh-sysmon DSH 插件快照日期:2026年8月16日
discovered
dsh-sysmon DSH 插件能做什么
- 显示 CPU 使用率(所有核心之和,可超过 100%)及核心数
- 显示内存使用率,阈值 80% 变橙色、90% 变红色
- 显示根文件系统磁盘使用率,阈值同上
- 每 1 秒刷新一次,客户端带请求中守卫避免重叠
- 使用 diff 方式只更新数值节点,减少重绘
- 服务端缓存,API 响应亚毫秒级
dsh-sysmon DSH 插件适合哪些场景
- 在 DSH Web 控制台中监控服务器资源使用
- 不离开浏览器即可快速发现高 CPU 或内存负载
- 感知根文件系统的磁盘空间压力
- 观察短时间窗口(1 秒间隔)内的资源趋势
- 在自托管 DSH 环境中集成实时健康检查
dsh-sysmon DSH 插件适合谁
- 需要一目了然系统指标的 DSH Web 用户
- 通过 DSH 管理服务器并希望轻量监控的开发者
dsh-sysmon DSH 插件的限制
- 仅 Linux 平台——依赖 /proc/stat、/proc/meminfo 和 df
- 只监控根文件系统(/)
- CPU 使用率基于约 1 秒采样窗口计算,瞬时突发会被平均
- 首次采样显示 0% CPU,直到第二次采样完成
dsh-sysmon DSH 插件的仓库 README 摘录
以下文字摘自 dsh-sysmon DSH 插件的上游仓库 AKS1st/dsh-sysmon 的 README,版权归原作者,仅作引用。
DSH Web 的系统状态悬浮窗:固定在页面右下角,每 1 秒刷新显示 CPU、内存、磁盘占用率。 ``` CPU 39%/16 MEM 46% DISK 22% ``` ## 显示规格 - **位置**:右下角固定悬浮,`pointer-events: none`,不遮挡界面操作。 - **配色**:默认浅灰色小字(等宽字体、11px)。 - **刷新**:1 秒一次。 ### 阈值规则 | 指标 | 默认(浅灰) | 橙色 | 红色 | | ---- | ----------- | ---- | ---- | | CPU(x%/y) | < 90%×核心数 | x ≥ 90%×核心数 | x ≥ 98%×核心数 | | 内存 | ≤ 80% | > 80% | > 90% | | 磁盘 | ≤ 80% | > 80% | > 90% | - **CPU**:`x%` 为所有核心使用率之和(可超过 100%),`y` 为总核心数;阈值按总容量比例计算。 - **内存 / 磁盘**:超过 80% 橙色、超过 90% 红色。 ## 安装 从 GitHub 仓库安装: ```sh dsh plugin --profile web add github:AKS1st/dsh-sysmon dsh web ``` 或 clone 到本地后从本地目录安装: ```sh git clone https://github.com/AKS1st/dsh-sysmon.git cd dsh-sysmon npm install npm run build dsh plugin --profile web add . dsh web ``` ## 工作方式 - **Host**(`src/index.ts`):`ctx.effect` 挂一个每秒运行的后台采样器,经 `ctx.shell` 采样(`/proc/stat`、`nproc`、`/proc/meminfo`、`df -P /`),把最新快照写入内存缓存。路由 `GET /dsh-sysmon/api` 只返回缓存(亚毫秒、零子进程开销),并拒绝非 GET 方法与跨源浏览器请求。CPU 使用率为相邻两次采样之间的增量(窗口约 1 秒),首次采样显示 0。 - **Client**(`src/client/index.ts`):创建 `#dsh-sysmon` 固定定位元素,每 1 秒 `fetch` 一次路由,带 in-flight 守卫避免请求重叠;重绘只更新三个数值节点(diff 式)。纯 DOM 实现、零运行时依赖。 ## 已知限制 - **仅 Linux**——宿主采集器读取 `/proc/stat`、`/proc/meminfo` 与 `df`;其他平台需要不同的采集
阅读完整 README仓库许可: BSD-3-Clause
dsh-sysmon DSH 插件常见问题
如何安装 dsh-sysmon?
运行 `dsh plugin --profile web add github:AKS1st/dsh-sysmon`,然后重启 DSH Web(`dsh web`)。你也可以克隆仓库到本地,构建后通过本地目录添加。
dsh-sysmon 能在 Windows 或 macOS 上运行吗?
不能。该插件读取 Linux 特有的文件(`/proc/stat`、`/proc/meminfo`、`df`)来采集指标,仅支持 Linux 宿主机。如需跨平台支持,需要自定义采集器。
可以修改刷新间隔或悬浮窗位置吗?
目前刷新间隔固定为 1 秒,位置固定在右下角,插件未提供配置项。如需修改,需要 fork 源码自行调整。
这个监控会影响 DSH Web 的性能吗?
影响极小。服务端 API 返回缓存数据,耗时亚毫秒;客户端使用单个固定元素和 diff 更新,fetch 请求有防重叠守卫。开销可忽略。
为什么刚开始 CPU 显示 0%?
CPU 使用率通过相邻两次采样(间隔约 1 秒)的差值计算。首次采样没有前一笔数据,所以显示 0%,直到第二次采样完成。