@keduoli-q/hardware-monitor
v2.0.0
Published
Node.js hardware monitor built on LibreHardwareMonitorLib, using named pipes and CLI reader.
Downloads
19
Maintainers
Readme
hardware-monitor
基于 LibreHardwareMonitor 的 Node.js 硬件监控工具,使用命名管道与 CLI 进程通信,支持持续或一次性获取系统传感器数据。
📦 安装
npm i @keduoli-q/hardware-monitor使用
const { startReader, sendCommand } = require("@keduoli-q/hardware-monitor");
// 日志输出
const log = true
const get = async () => {
await startReader((err, data) => {
if (err) {
console.error("解析失败:", err.message);
} else {
console.log("硬件信息:", data);
}
}, log);
await sendCommand({ type: "once"}); // 获取一次数据
// 其他命令
}
get()
// 输出
硬件信息: {
Motherboard: [ { model: 'B760M Snow Dream wifi/W', sensors: {} } ],
Cpu: [ { model: '12th Gen Intel Core i7-12700F', sensors: [Object] } ],
Memory: [ { model: 'Generic Memory', sensors: [Object] } ],
Gpu: [ { model: 'NVIDIA GeForce RTX 4060 Ti', sensors: [Object] } ]
}命令说明
| 命令(type) | 示例代码 |
| ----------------------------------- | ------------------------------------------------------------ |
| start,filter | sendCommand({ type: "start" }) — 启动持续获取全部数据 |
| once | sendCommand({ type: "once"}) — 获取一次数据 |
| config | sendCommand({ type: "config"}) —配置参数, 必须指定data 可用参数intervalms, cpu, memory, gpu, storage, motherboard, network |
| stop | sendCommand({ type: "stop" }) — 停止持续获取数据 |
| exit,quitclose,shutdown | sendCommand({ type: "exit" }) — 退出 |
