Wie kann ich die kumulative Netzwerknutzung eines Prozesses von Anfang bis Ende der Ausführung messen?


11

Ich möchte messen, wie viel Bandbreite git pullverbraucht wird, vorzugsweise indem dem Befehl git das gewünschte Programm vorangestellt wird, d. H.nettally git pull

Gibt es alternativ eine hinterhältige Möglichkeit, Nethogs / Wireshark-Daten zu sammeln und die Zahlen nach der Ausführung zu addieren?

Vielen Dank


Wenn ich das tun würde, würde ich rennen, iftopaber das ist nicht ganz für deine Bedürfnisse geeignet.
Mveroone

Ja, Sie wissen, dass all diese Programme dasselbe tun. Nethogs, Wireshark, Iftop. Ist es möglich, die App auf einer eigenen Oberfläche auszuführen?
Caduceus

Ein weiterer Trick wäre vielleicht eine iptables "Mangle" -Regel? dann hast du Zähler ... aber das ist noch weit von dem entfernt, was du willst.
Mveroone

Werfen Sie einen Blick auf nethogs.sourceforge.net , ich denke, es macht, was Sie wollen.
Diego Woitasen

Antworten:


14

Wenn Sie starten nethogsund dann die mTaste drücken, wird vom Momentanmodus (kB / s) in den kumulativen Modus (kB) gewechselt.


0

Wickeln Sie den Befehl in einen SOCKS-Client (z. B. dante-client), zeigen Sie SOCKS auf einen Server (z. B. socat / netcat), der den Datenverkehr misst, und leiten Sie ihn an den realen SOCKS-Server weiter. Es wird einen SOCKS-Overhead geben, aber wenn Sie kein genaues Maß benötigen, berücksichtigen Sie dies einfach.

Ein Shell-Skript könnte die Socat-Sockets und die LD_PRELOAD_PATH-Umgebung einrichten, den Befehl ausführen und Statistiken melden, sobald dies erledigt ist.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.