Je suis à la recherche d'un utilitaire qui pourrait me montrer la quantité de bande passante que chaque processus utilise. Il devrait juste imprimer les données et sortir car je veux introduire cette liste dans conky.
Réponses
Trop de publicités?Vous pouvez essayer NetHogs .
NetHogs est un petit outil d'analyse du réseau. Au lieu de décomposer le trafic par protocole ou par sous-réseau, comme le font la plupart des outils, il regroupe la bande passante par processus . NetHogs ne dépend pas d'un module spécial du noyau à charger. S'il y a soudainement beaucoup de trafic réseau, vous pouvez lancer NetHogs et voir immédiatement quel PID en est la cause. Il est ainsi facile d'identifier les programmes qui se sont emballés et qui consomment soudainement votre bande passante.
Essayez atop
... pour en tirer le meilleur parti, vous devrez peut-être activer certains correctifs supplémentaires du noyau (correctifs de comptabilité des E/S).
Si atop
n'est pas une option, alors utilisez netstat -anp --inet
(en tant que root) pour fournir une liste des ports TCP/UDP utilisés par les différents processus (ou éventuellement utiliser la commande lsof
pour cela). À partir de là, il suffit d'itérer sur chaque processus qui a une socket ouverte et de s'y attacher en utilisant la commande ltrace -S
o strace
pour regarder les lectures, les écritures, les envois et les réceptions, ou utiliser la fonction tcpdump
avec un filtre spécifiant votre ou vos adresses IP locales et les ports TCP/UDP qui ont été listés.
atop
est certainement le plus pratique d'entre eux ... si vous l'avez et si le support nécessaire du noyau est installé. Dans le passé, j'ai eu des clients et des employeurs qui ont mis en place des systèmes spéciaux (différents de leurs images de production) dans le seul but de prendre en charge le profilage des E/S à l'aide de atop
. Cependant, ces autres techniques vous permettront d'y arriver.
Je suis sûr que nous pourrions aussi faire quelque chose en utilisant SystemTap ... mais je ne connais pas de recettes faciles et toutes faites pour le faire. SystemTap est en grande partie un outil d'analyse de la programmation.