Agence web » Actualités du digital » Comment surveiller l'utilisation du processeur sous Linux au fil du temps

Comment surveiller l'utilisation du processeur sous Linux au fil du temps

le top L'utilitaire affiche l'utilisation actuelle du processeur pour chaque processus en cours d'exécution, mais que se passe-t-il si vous souhaitez surveiller cela au fil du temps et l'afficher sur un graphique? Il existe quelques utilitaires pour cela si votre fournisseur de cloud n'en a pas déjà un.

En remarque, si vous ne l’avez pas déjà installé, le htop l'utilitaire (illustré ci-dessus) est beaucoup plus agréable à utiliser que celui par défaut top.

La solution triviale: utilisez les graphiques de votre fournisseur de cloud

Cette solution est de loin la plus simple à utiliser, mais elle ne sera pas disponible pour tout le monde. Si vous utilisez AWS, CloudWatch facilite la surveillance de l'utilisation du processeur.

Dans la console de gestion CloudWatch, vous sélectionnez «Métriques», puis affichez les métriques pour EC2. La métrique «CPUUtilization» affiche votre utilisation moyenne du processeur:

Votre utilisation moyenne du processeur est mesurée par incréments de 5 minutes, mais vous pouvez activer la surveillance étendue de l'instance et la faire augmenter par incréments de 1 minute. Cela coûte cependant un supplément. Vous pouvez également définir facilement des alarmes lorsque l'utilisation du processeur est également trop élevée.

Si vous êtes sur Google Cloud Platform, un graphique apparaît sous l'onglet "Surveillance" lorsque vous sélectionnez une instance.

Azure a Azure Monitor, qui affiche des informations similaires:

Pour la plupart des autres fournisseurs de cloud, ils auront probablement un graphique comme celui-ci également.

Utilisation de / proc / loadavg

La meilleure façon de le faire en mode natif est de regarder où top obtient ses informations. /proc/loadavg contient des moyennes de 1 minute, 5 minutes et 15 minutes. Vous pouvez vous connecter avec cat

cat /proc/loadavg/
1.71 1.32 1.38 2/97 6429

Vous pouvez l'utiliser pour générer un graphique en imprimant chaque ligne dans un fichier CSV séparé par des virgules, en utilisant certains awk la magie:

cat /proc/loadavg | awk '{print $1","$2","$3}' >> cpu.csv

Accrochez-le à un cron travail en cours d'exécution chaque minute, faites pivoter les journaux avec logrotate, et vous avez un moniteur de processeur jerry-rigged. Vous pouvez importer le fichier CSV dans Excel, où il sera facile de représenter graphiquement l'utilisation moyenne du processeur sur un graphique linéaire.

Remarque, la commande ci-dessus imprime les moyennes de 1 minute, 5 minutes et 15 minutes. Si vous l'exécutez toutes les minutes, il n'est pas vraiment nécessaire d'imprimer les moyennes sur 5 et 15 minutes, car vous pouvez le calculer par calcul.

Installer sysstat

le sar l'utilitaire est idéal pour surveiller les performances du système. Il est inclus dans le cadre de sysstat, qui n'est probablement pas installé par défaut sur votre système. Vous devrez l'obtenir auprès du gestionnaire de packages de votre distribution. Pour les systèmes basés sur Debian comme Ubuntu, ce serait:

sudo apt-get install sysstat

Ensuite, activez-le en modifiant /etc/default/sysstat et en définissant «ENABLED» sur true.

Cela surveille votre système et génère un rapport toutes les 10 minutes, en les faisant pivoter après une semaine. Vous pouvez modifier ce comportement en éditant la crontab sysstat à /etc/cron.d/sysstatou en modifiant les paramètres de rotation dans le sysstat paramètres à /etc/sysstat/sysstat.

Vous pouvez générer un rapport en temps réel avec la commande suivante:

sar -u 1 3

sysstat collectera toutes les minutes les données d'utilisation du processeur en arrière-plan, /var/log/sysstat/. Vous pouvez ensuite importer ces données pour analyse, à l'aide d'un tableur ou d'un outil personnalisé comme sargraph, qui affiche un joli graphique:

Vous pouvez également utiliser des utilitaires de ligne de commande pour tracer des graphiques comme celui-ci, tels que ttyplot, mais aucun d'entre eux n'est aussi facile à utiliser (et aussi beau) qu'une interface graphique. La ligne de commande est battue sur celui-ci – les graphiques sont plus beaux.

Monit peut vous alarmer si l'utilisation du processeur est trop élevée

Monit est une suite de surveillance open source pour Unix qui vérifie la santé de votre serveur et peut être configurée pour vous envoyer des notifications si l'utilisation du processeur de votre serveur devient dangereusement élevée. Lisez notre guide de configuration pour en savoir plus.

Notez que CloudWatch réalise la même chose hors de la boîte avec des alarmes, et il peut fonctionner sur plusieurs mesures différentes, pas seulement sur l'utilisation du processeur.

★★★★★