Sous Linux, vous pouvez utiliser /proc. Voir ici pour un tas d'exemples de ligne de commande pour lire les statistiques.
Il serait préférable de lire les fichiers directement depuis Node, en utilisant fs.readFile()
Mettre à jour :Il y a aussi l'API du système d'exploitation qui est probablement meilleure. Exemple d'utilisation :convertir la sortie de os.cpus() dans Node.js en pourcentage
IMHO la meilleure option est d'utiliser le module systeminformation,
où vous pouvez récupérer des informations détaillées sur le matériel, le système et le système d'exploitation avec la prise en charge de Linux, macOS, Windows partiel et FreeBSD.
Par exemple pour obtenir les informations 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)
}
}
Cet exemple donnera le résultat suivant :
{ 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 } }