diff options
author | David Smith <dsmith@redhat.com> | 2008-08-08 12:26:02 -0500 |
---|---|---|
committer | David Smith <dsmith@redhat.com> | 2008-08-08 12:26:02 -0500 |
commit | a9a23c6ec198c08057989d6c3fc08b8865681bc4 (patch) | |
tree | 2d28417ab9a45f3200dcda7acdf84998c9c2b383 /testsuite/systemtap.examples/network/nettop.stp | |
parent | 9963b5fc7945ce939aaa8027ca71927cb77a55ff (diff) | |
parent | 751f828801e9bd4739d03a31a77e84c91e075b4e (diff) | |
download | systemtap-steved-a9a23c6ec198c08057989d6c3fc08b8865681bc4.tar.gz systemtap-steved-a9a23c6ec198c08057989d6c3fc08b8865681bc4.tar.xz systemtap-steved-a9a23c6ec198c08057989d6c3fc08b8865681bc4.zip |
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap into work
Diffstat (limited to 'testsuite/systemtap.examples/network/nettop.stp')
-rwxr-xr-x | testsuite/systemtap.examples/network/nettop.stp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/testsuite/systemtap.examples/network/nettop.stp b/testsuite/systemtap.examples/network/nettop.stp new file mode 100755 index 00000000..96db413a --- /dev/null +++ b/testsuite/systemtap.examples/network/nettop.stp @@ -0,0 +1,42 @@ +#! /usr/bin/env stap + +global ifxmit, ifrecv + +probe netdev.transmit +{ + ifxmit[pid(), dev_name, execname(), uid()] <<< length +} + +probe netdev.receive +{ + ifrecv[pid(), dev_name, execname(), uid()] <<< length +} + + +function print_activity() +{ + printf("%5s %5s %-7s %7s %7s %7s %7s %-15s\n", + "PID", "UID", "DEV", "XMIT_PK", "RECV_PK", + "XMIT_KB", "RECV_KB", "COMMAND") + + foreach ([pid, dev, exec, uid] in ifrecv-) { + n_xmit = @count(ifxmit[pid, dev, exec, uid]) + n_recv = @count(ifrecv[pid, dev, exec, uid]) + printf("%5d %5d %-7s %7d %7d %7d %7d %-15s\n", + pid, uid, dev, n_xmit, n_recv, + n_xmit ? @sum(ifxmit[pid, dev, exec, uid])/1024 : 0, + n_recv ? @sum(ifrecv[pid, dev, exec, uid])/1024 : 0, + exec) + } + + print("\n") + + delete ifxmit + delete ifrecv +} + +probe timer.ms(5000), end, error +{ + print_activity() +} + |