8 from ctypes import c_ushort, c_int, c_ulonglong
13 print("USAGE: %s [--histogram]" % argv[0])
22 if argv[1] == "--histogram":
27 print("Hit Ctrl-C to end.")
34 b = BPF(src_file="dbus-message-size.c")
36 b.attach_uretprobe(name="dbus-1", sym="do_writing", fn_name="do_write_exit")
37 b.attach_uretprobe(name="dbus-1", sym="do_authentication", fn_name="do_write_exit")
38 b.attach_uretprobe(name="dbus-1", sym="_dbus_write_socket_with_unix_fds_two", fn_name="do_return")
39 b.attach_uretprobe(name="dbus-1", sym="_dbus_write_socket_two", fn_name="do_return")
40 b.attach_uretprobe(name="dbus-1", sym="_dbus_write_socket", fn_name="do_return")
48 print ("%d : \n" % loop)
49 stats_t = b["size_sent"]
51 print ("%10s %20s %20s" % ("PID", "NAME", "BYTES SENT"))
52 for v, p in sorted(stats_t.items(), key=lambda stats_t: stats_t[1].bytes, reverse=True):
53 print("%10d %20s %20d \n" % (v.pid, v.comm.encode('string-escape'), p.bytes))
54 b["sizes"].print_log2_hist("bytes");