GNU/Linux >> Belajar Linux >  >> Linux

Cara mendapatkan statistik sistem dengan node.js

Di Linux, Anda dapat menggunakan /proc. Lihat di sini untuk sekumpulan contoh baris perintah untuk membaca statistik.

Akan lebih baik untuk membaca file dari Node secara langsung, menggunakan fs.readFile()

Perbarui :Ada juga API OS yang mungkin lebih baik. Contoh penggunaan:Ubah output os.cpus() di Node.js menjadi persentase


IMHO opsi terbaik adalah menggunakan modul informasi sistem,

tempat Anda dapat mengambil informasi perangkat keras, sistem, dan OS yang mendetail dengan dukungan Linux, macOS, sebagian Windows, dan FreeBSD.

Misalnya untuk mendapatkan informasi 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)
    }
}

Contoh ini akan menghasilkan sebagai berikut:

{ 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. Linux – Bagaimana Mendapatkan Lebih Sedikit Ttys Dengan Systemd?

  2. Bagaimana Mendapatkan Ls Untuk Mencantumkan Direktori Dengan Trailing Forward-slash?

  3. Bagaimana Cara Membuat Jshint Bekerja?

  1. Bagaimana Memulai Dengan Juju?

  2. Cara:Mengelola Log Sistem dengan Journalctl

  3. Bagaimana Memulai Dengan Server Cloud FreeBSD

  1. Bagaimana Anda memulai Linux?

  2. Cara menggunakan Ansible untuk mengatur pemantauan sistem dengan Prometheus

  3. Bagaimana cara mendapatkan persentase penggunaan prosesor dengan bash?