- 0x.tools est une collection d’utilitaires open source destinée à analyser les performances des applications sous Linux
- L’objectif est de faciliter le déploiement et de réduire au minimum les dépendances afin de diminuer les frictions lors de la résolution des problèmes système
- Aucune mise à niveau de l’OS, installation de module noyau, framework de monitoring lourd, agent Java ou base de données n’est nécessaire
- Il permet de mesurer l’activité au niveau de chaque thread, ainsi que de suivre et d’échantillonner l’exécution du code, les états de sommeil, les appels système et les points d’attente du noyau
Publication de la bêta de xcapture-bpf & xtop 2.0.2
xcapture-bpf et xtop ressemblent à l’outil top de Linux, mais utilisent eBPF pour visualiser les données de performance sous différents angles
- Il est possible d’aller du niveau de vue d’ensemble système jusqu’au détail de l’activité de chaque thread et des événements du noyau
- eBPF est entièrement programmable, et l’objectif est d’en exploiter tout le potentiel
Mise en surbrillance du terminal et stacktile dans xcapture-bpf
- La recherche/mise en surbrillance de texte dans le terminal et les fonctions de défilement fonctionnent bien avec le nouveau format stacktile
- Les stacktiles peuvent contenir non seulement les noms de fonctions, mais aussi diverses informations comme les noms de fichiers ou les raisons des allocations mémoire
Installation de xcapture-bpf
xcapture-bpf est encore en bêta, il ne faut donc pas l’exécuter sur des systèmes de production
- Il utilise eBPF et s’appuie actuellement sur BCC et
python3 comme frontend
- Testé sur RHEL 8.1 ou Ubuntu 24.04 et versions ultérieures
Outils inclus
- Fournit des outils interactifs en temps réel et des outils de profiling à basse fréquence
- Description des principaux outils :
psn : échantillonnage de l’activité actuelle des threads les plus actifs
xcapture : échantillonneur d’état des threads à faible overhead
xcapture-bpf : échantillonneur d’état des threads programmable à faible overhead utilisant eBPF
syscallargs : liste des appels système et de leurs arguments
schedlat : affiche la latence d’ordonnancement CPU d’un processus unique
run_xcapture.sh : script daemon simple pour exécuter xcapture en continu
run_xcpu.sh : échantillonnage continu à basse fréquence des piles d’appels des threads sur le CPU
Utilisation et exemples de sortie
- Utilisation de
xcapture pour échantillonner l’activité des threads Linux et afficher une sortie à largeur fixe
- Possibilité de produire une sortie vers un fichier CSV pour analyser les performances en ligne de commande
Installation et utilisation
xcapture, schedlat, psn échantillonnent le système de fichiers /proc comme des outils Linux standard
- Fonctionne sur Linux kernel version 2.6 et plus, sans configuration supplémentaire
FAQ
- 0x.tools est un produit open source sous licence GPL v3
- Le surcoût de mesure est inférieur à 1 % de la capacité CPU du serveur
- Utilisable en toute sécurité en environnement de production
- Pourquoi utiliser l’échantillonnage /proc plutôt que Perf et eBPF : parce que, dans les entreprises existantes, il n’est pas possible d’utiliser eBPF à grande échelle en production
Avis de GN⁺
- 0x.tools est une puissante suite d’outils pour l’analyse des performances des systèmes Linux
- L’utilisation d’eBPF pour visualiser les données de performance sous différents angles est utile
- L’outil est conçu pour pouvoir être utilisé en toute sécurité en environnement de production
- Par rapport à d’autres outils d’analyse des performances, ses avantages sont son faible overhead et sa simplicité d’installation
- Il améliore la précision et la flexibilité de l’analyse des performances en tirant parti de technologies récentes comme eBPF
Aucun commentaire pour le moment.