6 votes

Comment puis-je obtenir des valeurs instantanées de la charge CPU ?

J'ai créé une application serveur-client dans laquelle, en fonction de l'utilisation du CPU et des conditions de charge, elle sert une demande de fichier à l'utilisateur.

J'utilise /proc/loadavg values pour ce . Mais cet utilitaire donne des valeurs moyennées sur au moins 1 minute.

Je veux que la moyenne des valeurs soit calculée sur une période beaucoup plus courte, comme 1 seconde ou 5 secondes.

2voto

Ian B. Points 3503

Que diriez-vous d'analyser la sortie de mpstat de la sysstat paquet ? Vous pouvez obtenir des statistiques pour chaque processeur et définir l'intervalle (ci-dessous pour un intervalle de 2s).

Exemple de sortie :

$ mpstat -P ALL 2
Linux 3.5.0-19-generic (ubuntu)     11/30/2012  _x86_64_    (4 CPU)

08:34:28 AM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
08:34:30 AM  all    1.01    0.00    1.26    0.00    0.00    0.13    0.00    0.00   97.61
08:34:30 AM    0    2.50    0.00    1.50    0.00    0.00    0.50    0.00    0.00   95.50
08:34:30 AM    1    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
08:34:30 AM    2    1.01    0.00    3.02    0.00    0.00    0.00    0.00    0.00   95.98
08:34:30 AM    3    0.50    0.00    0.50    0.00    0.00    0.00    0.00    0.00   99.00

Vous pouvez également implémenter l'algorithme vous-même. Jetez un coup d'œil aquí y aquí .

Une autre façon de procéder serait de surveiller la différence entre le temps d'inactivité et le temps d'utilisation des autres services de l'entreprise. /proc/stat à un intervalle de temps défini et calcule la charge sur cette base. Voici plus d'informations sur /proc/stat .

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X