GNU/Linux >> Znalost Linux >  >> Linux

Jak získat systémové statistiky pomocí node.js

V Linuxu můžete použít /proc. Zde najdete spoustu příkladů příkazového řádku ke čtení statistik.

Bylo by však lepší číst soubory přímo z Node pomocí fs.readFile()

Aktualizovat :Existuje také OS API, které je pravděpodobně lepší. Příklad použití:Převeďte výstup os.cpus() v Node.js na procenta


IMHO nejlepší možností je použít modul systémové informace,

kde můžete získat podrobné informace o hardwaru, systému a OS s podporou Linuxu, macOS, částečné Windows a FreeBSD.

Chcete-li například získat informace o CPU:

const si = require('systeminformation');

// callback style
si.cpu(function(data) {
    console.log('CPU-Information:');
    console.log(data);
});

// promises style - new in version 3
si.cpu()
    .then(data => console.log(data))
    .catch(error => console.error(error));

// full async / await example (node >= 7.6)
async function cpu() {
    try {
        const data = await si.cpu();
        console.log(data)
    } catch (e) {
        console.log(e)
    }
}

Tento příklad bude mít za následek následující:

{ manufacturer: 'Intel®',
    brand: 'Core™ i5-3317U',
    vendor: 'GenuineIntel',
    family: '6',
    model: '58',
    stepping: '9',
    revision: '',
    voltage: '',
    speed: '1.70',
    speedmin: '0.80',
    speedmax: '2.60',
    cores: 4,
    cache: { l1d: 32768, l1i: 32768, l2: 262144, l3: 3145728 } }
CPU-Information:
{ manufacturer: 'Intel®',
    brand: 'Core™ i5-3317U',
    vendor: 'GenuineIntel',
    family: '6',
    model: '58',
    stepping: '9',
    revision: '',
    voltage: '',
    speed: '1.70',
    speedmin: '0.80',
    speedmax: '2.60',
    cores: 4,
    cache: { l1d: 32768, l1i: 32768, l2: 262144, l3: 3145728 } }

Linux
  1. Jak monitorovat systém pomocí Sysstat na Centos

  2. Jak dostat Ls do seznamu adresářů s koncovým lomítkem?

  3. Jak začít s Juju?

  1. Jak jste začali s Linuxem?

  2. Jak používat Ansible k nastavení monitorování systému pomocí Prometheus

  3. Jak nakonfigurovat nastavení sítě pomocí systémových rolí Ansible

  1. Jak monitorovat výkon systému Linux pomocí Sysstat

  2. Linux – jak získat méně Ttys s Systemd?

  3. Jak přimět Vim, aby správně spolupracoval s Tmux?