要通过JavaScript日志监控Debian系统的状态,你可以使用Node.js的child_process模块来执行系统命令并获取输出。以下是一个简单的示例,展示了如何使用JavaScript监控Debian系统的CPU使用率、内存使用情况和磁盘空间。
首先,确保你已经安装了Node.js。如果没有,请访问Node.js官网下载并安装。
然后,创建一个名为monitor.js的文件,并将以下代码粘贴到文件中:
const { exec } = require('child_process'); // 获取CPU使用率 function getCpuUsage() { exec('top -bn1 | grep load', (error, stdout, stderr) => { if (error) { console.error(`执行错误: ${error}`); return; } const loadAverage = stdout.trim().split(' ')[8]; console.log(`CPU使用率: ${loadAverage}`); }); } // 获取内存使用情况 function getMemoryUsage() { exec('free -m | grep Mem', (error, stdout, stderr) => { if (error) { console.error(`执行错误: ${error}`); return; } const memoryInfo = stdout.trim().split(' '); const totalMemory = memoryInfo[1]; const usedMemory = memoryInfo[2]; const freeMemory = memoryInfo[3]; console.log(`内存使用情况: 总计 ${totalMemory}MB, 已用 ${usedMemory}MB, 空闲 ${freeMemory}MB`); }); } // 获取磁盘空间 function getDiskSpace() { exec('df -h | grep /$', (error, stdout, stderr) => { if (error) { console.error(`执行错误: ${error}`); return; } const diskSpaceInfo = stdout.trim().split(/\s+/); const totalSpace = diskSpaceInfo[1]; const usedSpace = diskSpaceInfo[2]; const availableSpace = diskSpaceInfo[3]; console.log(`磁盘空间: 总计 ${totalSpace}, 已用 ${usedSpace}, 可用 ${availableSpace}`); }); } // 每隔一段时间(例如:5秒)执行一次监控 setInterval(() => { getCpuUsage(); getMemoryUsage(); getDiskSpace(); }, 5000); 保存文件后,在终端中运行以下命令启动监控脚本:
node monitor.js 这将每隔5秒输出一次Debian系统的CPU使用率、内存使用情况和磁盘空间。
请注意,这个示例仅用于演示目的,实际应用中可能需要更详细的监控和错误处理。另外,你可以根据需要修改setInterval中的时间间隔。