Je veux vérifier la bande passante réseau utilisée par mon processus. Pour cela, j’ai trouvé que l’outil nethogs est utile. En utilisant cet outil, je peux voir quel processus consum une bande passante réseau et un comportement de processus. Mais comment puis-je capturer des données de nethogs pour mon processus et les stocker dans un fichier journal?
Vous pouvez essayer cette commande pour capturer la sortie:
nethogs -d 5 | sed 's/[^[:print:][:cntrl:]]//g' > output.txt
Je ne sais pas quand ces options ont été implémentées mais vous pouvez utiliser nethogs -t
ou nethogs -b
, le pid et l’utilisateur sont étrangement placés à la fin de la chaîne de commande pid, mais assez facile à parsingr.
Je pense que vous devez utiliser la dernière version 0.8.1-SNAPSHOT de cvs
La bonne commande de nethogs est
nethogs -d 1 eth0 > output.txt
Vous devez spécifier l’interface réseau sinon l’interface eth0 par défaut sera utilisée. Parfois, nethogs peut ne pas afficher la sortie correcte à cause de l’interface réseau. Il est toujours préférable de fournir l’interface réseau et de générer du trafic pendant l’expérimentation. Vous pouvez imprimer la sortie dans un fichier en ajoutant > output.txt
-d argument spécifie la fréquence d’ > output.txt
la sortie. Ici, j’ai donné 1, cela indique que la sortie sera affichée par seconde.
J’espère que cela pourrait être utile.