Sysstat

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Domaine Monitoring système (collecte de statistiques d'activité)
Commande sysstat (paquet)
Contexte Fournit Sar, Iostat, mpstat, pidstat, sadc, sa1, sa2, sadf
Voir aussi Sar (rapports CPU/mémoire/disques/réseau) · Iostat (focus E/S disque)

sysstat est le paquet qui fournit l'ensemble des outils de collecte et de reporting d'activité système sous Linux : un démon de collecte (sadc) qui historise en continu les statistiques CPU, mémoire, disques et réseau dans /var/log/sysstat/, et une série d'utilitaires pour consulter ces données en direct ou a posteriori. Le détail des commandes sar et iostat est traité dans leurs pages dédiées ; cette page couvre l'installation du paquet et la mise en place de la collecte périodique.

Installation

apt-get install sysstat     # Debian/Ubuntu
yum install sysstat         # RHEL/CentOS
dnf install sysstat         # RHEL/CentOS récents

Contenu du package

/usr/bin/sar
/usr/bin/iostat
/usr/bin/mpstat
/usr/bin/pidstat
/usr/bin/nfsiostat
/usr/bin/cifsiostat
/usr/bin/sadf
/usr/lib/sysstat/sadc

Activer la collecte périodique

Sur Debian/Ubuntu, la collecte est désactivée par défaut à l'installation. Il faut l'activer explicitement dans /etc/default/sysstat :

vi /etc/default/sysstat
ENABLED="true"

La planification se fait via /etc/cron.d/sysstat, installé par le paquet :

# Activity reports every 10 minutes everyday
5-55/10 * * * * root command -v debian-sa1 > /dev/null && debian-sa1 1 1

# Additional run at 23:59 to rotate the statistics file
59 23 * * * root command -v debian-sa1 > /dev/null && debian-sa1 60 2

Le script debian-sa1 encapsule sadc (voir sa1) : la première ligne échantillonne l'activité toutes les 10 minutes (arguments 1 1 — intervalle 1s, 1 échantillon), la seconde tourne à 23:59 pour clôturer et faire pivoter le fichier binaire du jour (arguments 60 2). C'est ce même mécanisme cron qui alimente les fichiers /var/log/sysstat/saXX consultés par sar -f.

Sur les distributions récentes, ce cron coexiste avec des timers systemd équivalents (sysstat-collect.timer, sysstat-summary.timer), désactivés par défaut eux aussi — le cron reste la voie la plus répandue et suffit dans la grande majorité des cas.

Sur RHEL/CentOS, le fichier de configuration équivalent est /etc/sysconfig/sysstat (durée de rétention de l'historique via HISTORY, options de collecte via SADC_OPTIONS — voir la section Dépannage de Sar pour un cas concret).

Voir aussi

  • Sar — statistiques CPU/mémoire/disques/réseau avec historisation cron
  • Iostat — statistiques CPU et E/S disque, sans historisation cron