Czy istnieje sposób konwersji informacji o os.cpus() na wartość procentową? Podobnie jak wyjście iostat (w sekcji CPU).Konwersja danych wyjściowych os.cpus() w pliku Node.js do wartości procentowej
Mój kod:
var os = require('os');
console.log(os.cpus());
Wyjście:
[ { model: 'MacBookAir4,2',
speed: 1800,
times:
{ user: 5264280,
nice: 0,
sys: 4001110,
idle: 58703910,
irq: 0 } },
{ model: 'MacBookAir4,2',
speed: 1800,
times:
{ user: 2215030,
nice: 0,
sys: 1072600,
idle: 64657440,
irq: 0 } },
{ model: 'MacBookAir4,2',
speed: 1800,
times:
{ user: 5973360,
nice: 0,
sys: 3197990,
idle: 58773760,
irq: 0 } },
{ model: 'MacBookAir4,2',
speed: 1800,
times:
{ user: 2187650,
nice: 0,
sys: 1042550,
idle: 64714820,
irq: 0 } } ]
chciałbym mieć "razy" metryka przekonwertowane na procent, tak jak to pokazują w komendzie iostat
:
cpu
us sy id
6 3 91
Rozumiem, że wartości w funkcji nodejs są w tykrach procesora, ale ja nie mam ide jaki wzór powinienem użyć, aby przekonwertować je na procent :)
Dzięki.
To wszystko ! To była formuła, której szukałem. Dzięki :) – rogeriopvl
Nie mogę uwierzyć, że brakowało mi os. * API przy szukaniu: -/Tam idziesz, to powinno być wszystko, czego potrzebujesz. – w00t
Warto zauważyć, że daje to jedynie uśrednienie w czasie od czasu ostatniego uruchomienia komputera. Jeśli uruchomisz tryb bezczynności na tydzień i uzyskasz 100% wykorzystania procesora, ten skrypt nadal będzie wyświetlał urządzenie niemal bezczynne. Lepszym rozwiązaniem może być użycie metody setTimeout do pomiaru statystyk przed i po drugim lub dwóch oczekiwaniach, odjęcie początkowych odcisków od końcowych odcisków i wykonanie obliczeń. –