溫馨提示×

如何通過JS日志監控Debian狀態

小樊
49
2025-08-23 14:50:17
欄目: 編程語言

要通過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中的時間間隔。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女