Votre système Linux est une excellente plateforme pour les serveurs et les postes de travail. Mais comme tout autre système complexe, il est crucial d’avoir une surveillance adéquate en place pour maintenir votre système à son meilleur niveau. Heureusement, Sysdig est juste au coin de la rue!
Sysdig est un outil de surveillance Linux complet qui peut surveiller votre système pour détecter les menaces, les erreurs, les modèles d’utilisation, et bien plus encore. Et dans ce tutoriel, vous apprendrez à installer Sysdig tout en mettant en évidence les options de configuration particulières pour mieux surveiller votre système Linux.
Lisez la suite et ne manquez jamais une « alerte »!
Prérequis
Ce tutoriel sera une démonstration pratique. Si vous souhaitez suivre, assurez-vous d’avoir ce qui suit.
- A Linux machine – This tutorial uses Ubuntu 20.04 LTS, but any Linux distributions will work.
- A non-root user with sudo privileges.
Installation de Sysdig sur Linux
L’outil en ligne de commande Sysdig est généralement disponible dans la plupart des distributions Linux modernes, et vous pouvez l’installer comme les autres packages que vous avez installés jusqu’à présent sur votre machine.
1. Ouvrez votre terminal et exécutez la commande apt update
ci-dessous pour vous assurer d’avoir les dernières mises à jour des dépôts de votre distribution. Cette commande met à jour les listes de packages de votre système et peut prendre quelques minutes pour s’achever.

2. Ensuite, exécutez la commande apt install
ci-dessous pour télécharger (curl
) et installer
les packages nécessaires pour Sysdig. Cette commande installe également certains modules supplémentaires utilisés ultérieurement dans ce tutoriel comme suit :
gnupg
– Le GNU Privacy Guard est un outil pour la communication sécurisée et le stockage de données. Ce package permet le téléchargement de la clé publique GPG de Sysdig pour vérifier la validité des packages Sysdig.
software-properties-common
– Fournit un moyen rapide de gérer vos sources de logiciels via l’environnement de ligne de commande ou l’interface graphique. Ce paquet vous permet d’utiliser la commandeadd-apt-repository
pour ajouter les dépôts de paquets Sysdig.
linux-headers-$(uname -r)
– Fournit les fichiers nécessaires pour construire des modules de noyau pour votre noyau en cours d’exécution. Ce paquet est requis car vous pourriez installer Sysdig sur une machine avec un noyau stock plus ancien.

3. Exécutez la commande curl
ci-dessous pour ajouter la clé publique GPG de Sysdig (GPG
) à votre trousseau de clés APT. Cette commande vous permet de vérifier que les paquets téléchargés depuis sysdig.com sont valides et non modifiés.
Vous recevrez un message OK après avoir ajouté avec succès la clé, comme indiqué ci-dessous.

4. Maintenant, exécutez la commande curl
ci-dessous pour télécharger silencieusement (-s
) les dépôts Sysdig sous forme de draios.list
et l’ajouter à votre système. L’extension .list
indique à votre APT que le fichier est une liste d’URL pour les dépôts, plutôt qu’une seule URL.
5. Exécutez à nouveau la commande apt update
ci-dessous pour télécharger les nouveaux dépôts Sysdig et mettre à jour les listes de paquets APT avec les informations des nouveaux dépôts.
Vous verrez la sortie suivante si votre APT est configuré correctement.

6. Après avoir téléchargé les dépôts Sysdig, exécutez la commande apt install
ci-dessous pour installer sysdig
sur votre machine. Cette commande télécharge et installe le paquet sysdig
ainsi que ses paquets de support.

7. Enfin, exécutez la commande sysdig
ci-dessous pour vérifier la version de Sysdig installée sur votre machine.
Le numéro de version aide à déterminer si votre paquet Sysdig est à jour. La version donne également un aperçu de l’impact de la version de Sysdig sur les performances du système.
Comme indiqué ci-dessous, 0.28.0 est la dernière version de sysdig à ce jour. Votre numéro de version pourrait être différent.

Surveillance des systèmes Linux avec csysdig
Maintenant que vous avez Sysdig installé, vous pouvez utiliser Sysdig pour examiner ce qui se passe sur votre système. L’outil en ligne de commande Sysdig dispose de nombreux indicateurs qui vous offrent différentes vues de votre système et de son activité. L’exemple le plus basique est la commande csysdig
.
Exécutez la commande csysdig
sans aucun indicateur pour voir ce qui se passe sur votre système en ce moment. La commande vous montrera l’activité de tous les processus actuellement en cours d’exécution.
Notez que vous devez exécuter les commandes Sysdig avec le privilège
sudo
pour avoir un accès complet à votre système. Certaines activités du système peuvent être masquées par défaut aux utilisateurs non root, comme la sortie du système de fichiers /proc. Sysdig nécessite également des privilègessudo
pour charger automatiquement les symboles du noyau nécessaires pour effectuer bon nombre de ses astuces, comme le module noyau sysdig-probe.
Si vous rencontrez l’erreur suivante, vous devrez réinstaller le paquet ncurses-term
. Le paquet ncurses-term
a tendance à se corrompre après une installation Sysdig fraîche. Sysdig dépend du paquet ncurses-term
pour prendre en charge son interface utilisateur ncurses.

Si la commande csysdig
réussit, vous obtiendrez la sortie suivante organisée en onglets.
Description | |
PID | The Process ID that assigned by the Linux kernel. You use PIDs to identify and manage processes. |
PPID | The parent process ID of the process. You use PPID to trace the process back through its parent processes. Together, PID and PPID uniquely identify a process on your system. |
CPU | The percentage of CPU used by the application since it started can be seen on a scale from 0 to 100%, where 100% equals total CPU usage. You use CPU usage to find applications that are hogging system resources. |
USER | The name of the user that started the process. You use USER to find out who is executing a process you are interested in. |
TH | The name of the user that started the process. You use USER to find out who is executing a process you are interested in. |
VIRT | The total amount of virtual memory used by the application. You use VIRT to find applications that are hogging your system’s memory. |
RES | The number of resident memory pages a process has, as mapped to physical memory. You use RES to find applications that are hogging your system’s memory. |
FILE | The disk’s file descriptor used by the application. You use FILE to see which files are being read or written frequently, usually an indication of I/O activity. |
NET | The network socket descriptor used by the application. You use NET to see which network connections are being used by the process, and how much data is being transferred in bytes per second. |
Command | The network socket descriptor used by the application. You use NET to see which network connections are being used by the process, and how much data is being transferred in bytes per second. |
Au premier coup d’œil, l’interface de csysdig ressemble à des outils de surveillance tels que htop.

Appuyez sur F2 et les onglets supérieurs changeront pour afficher un nouvel ensemble d’informations organisées en onglets sur la gauche, comme indiqué ci-dessous.
Sysdig appelle cela des « vues » car ce sont des vues système différentes, organisées par le type d’informations qu’elles affichent, offrant plus de contexte. Et comme ces vues sont basées sur des scripts LUA, vous pouvez personnaliser les scripts pour extraire différentes données du système et changer la vue selon vos préférences.

Par défaut, les scripts LUA se trouvent dans le répertoire /usr/share/sysdig/chisels, comme indiqué ci-dessous.

Surveillance des processus consommateurs de CPU avec les ciseaux Sysdig
Sysdig propose plusieurs ciseaux prêts à l’emploi qui collectent automatiquement des informations système spécifiques, appelées « ciseaux« . Peut-être que vous rencontrez des performances lentes sur votre CPU. Si c’est le cas, l’exécution de la commande sysdig
avec un ciseau spécifié vous permet de voir quelles applications/processus utilisent le plus votre CPU.
1. Exécutez la commande sysdig
ci-dessous pour répertorier les ciseaux disponibles.
La capture d’écran ci-dessous montre seulement quelques ciseaux. Mais vous pouvez trouver et apprendre la liste complète de tous les ciseaux disponibles dans la documentation.
Les ciseaux Sysdig sont également des scripts LUA. Vous pouvez créer vos propres ciseaux pour surveiller des informations système spécifiques ou implémenter votre propre vue, mais ce sujet dépasse le cadre de ce tutoriel.

2. Ensuite, exécutez la commande ci-dessous pour voir les informations détaillées (-i
) sur un ciseau spécifique, comme topprocs_cpu
dans cette démonstration.
Vous pouvez voir toutes les informations sur le ciseau topprocs_cpu ci-dessous, y compris le nom du ciseau, la catégorie et une brève description de ce que fait le ciseau.
Dans cet exemple, le ciseau topprocs_cpu est classé comme Utilisation du CPU et montre le processus principal défini par l’utilisation la plus élevée du CPU.
Une fois que vous comprenez la fonctionnalité d’un ciseau, vous pouvez commencer à utiliser ce ciseau.

3. Exécutez la commande sysdig
ci-dessous, en spécifiant le bon ciseau (-c topprocs_cpu
) pour trouver les applications utilisant le plus de CPU dans votre système.
Sysdig capture les 10 processus consommant le plus de CPU dans cette démonstration et les affiche sur le terminal. Le processus le plus intensif en CPU sera affiché en haut (sshd), ce qui les rend plus faciles à trouver.

Surveillance des Informations Système Filtrées
Dans certains cas, la sortie est énorme, ce qui rend difficile la filtration des informations système en fonction d’un ciseau spécifique. Heureusement, Sysdig offre une puissante option de filtre qui utilise la syntaxe Lua pour effectuer une filtration efficace.
Supposons que vous recherchiez uniquement les processus sshd qui contribuent à une utilisation élevée du processeur. Vous pouvez définir une expression de filtre en fonction d’un PID spécifique ou du nom du processus.
Exécutez la commande sysdig
ci-dessous pour afficher uniquement le processus sshd
qui utilise beaucoup de CPU.
Comme le montre l’exemple ci-dessous, vous obtiendrez une sortie filtrée sans obtenir d’autres informations sur les processus.
A partir de la sortie, vous pouvez obtenir plus d’informations sur le processus sshd, comme pourquoi le processus sshd utilise plus de CPU ou de mémoire, et ainsi de suite.

Création d’un fichier journal d’événements pour surveiller votre système
Une des excellentes fonctionnalités offertes par Sysdig est la possibilité de créer des fichiers journaux d’événements, qui vous permettent de collecter toutes les informations sur ce que votre application ou le système fait pour une analyse ultérieure. Les fichiers journaux d’événements fournissent les mêmes informations que les sorties en ligne de commande dans les exemples précédents, mais sont enregistrés dans un fichier sur le disque.
1. Exécutez la commande ci-dessous pour créer un fichier (-w
) appelé ata.scap
dans votre répertoire personnel, où Syslog stockera toutes les sorties sysdig
.
L’extension de fichier .scap permet de sauvegarder les flux de données sous forme de texte lisible par l’homme.
2. Ensuite, exécutez la commande ls -la
ci-dessous pour répertorier tous les fichiers dans le répertoire de travail.
Vous remarquerez un nouveau fichier nommé ata.scap dans votre répertoire personnel, comme illustré ci-dessous.

3. Enfin, exécutez la commande ci-dessous pour que Sysdig lise (-r
) le fichier journal des événements Sysdig (ata.scap
) et affiche le comportement de votre système lorsque vous vous connectez en SSH à votre serveur.

Conclusion
Dans cet article, vous avez appris comment installer Sysdig sur Ubuntu 20.04 et utiliser csysdig pour collecter des informations sur votre système, vos applications et la sécurité. Vous avez également abordé la création d’un fichier journal des événements qui vous permet d’enregistrer le comportement de votre système.
À ce stade, vous avez réalisé qu’avoir Sysdig installé sur votre système vous offre des outils puissants. Et ces outils vous aident à obtenir plus d’informations sur le fonctionnement de votre système, de vos applications et de votre infrastructure.
Maintenant, avec cette nouvelle connaissance, pourquoi ne pas apprendre à décoder votre trafic HTTP avec Sysdig? Ou comment traquer les goulots d’étranglement des applications avec les traceurs Sysdig?