Comment puis-je mesurer l'utilisation réseau cumulée d'un processus, du début à la fin de l'exécution

12

Je veux mesurer la quantité de bande passante git pullutilisée, de préférence en préfixant la commande git avec le programme souhaité, c'est-à-direnettally git pull

Sinon, existe-t-il un moyen sournois d'accumuler des données Nethogs / Wireshark et d'additionner les chiffres après l'exécution?

Merci

caducée
la source
Si je devais faire cela, je courrais iftopmais ce n'est pas totalement adapté à vos besoins.
mveroone
oui, vous savez que tous ces programmes font la même chose. nethogs, wirehark, iftop. Est-il possible d'exécuter l'application sur sa propre interface peut-être?
caducée
Une autre astuce serait peut-être une règle "mangle" iptables? alors vous avez des compteurs ... mais c'est encore loin de ce que vous voulez.
mveroone
Jetez un œil à nethogs.sourceforge.net , je pense qu'il fait ce que vous voulez.
Diego Woitasen

Réponses:

15

Si vous lancez nethogspuis appuyez sur la mtouche, il passera du mode instantané (kB / s) au mode cumulatif (kB).

Phrogz
la source
0

Enveloppez la commande dans un client SOCKS (par exemple, dante-client), pointez SOCKS sur un serveur (par exemple, socat / netcat) qui mesurera le trafic et le transmettra au vrai serveur SOCKS. Il y aura des frais généraux SOCKS, mais en supposant que vous n'avez pas besoin d'une mesure exacte , il suffit de prendre cela en compte.

Un script shell pourrait configurer les sockets socat et l'environnement LD_PRELOAD_PATH, exécuter la commande et rapporter les statistiques une fois terminé.

Dave Car
la source