运行按用户分组的资源使用情况的显示?

我们最近重新调整了我们的网站托pipe设置的一部分, 将一系列应用程序在单个(虚拟)机器上分割成多个用户,以便更好地发现资源使用问题等。

然而,在这个时候,问题是,如果我们有一个麻烦行为的候选人,这可以很容易地使用top -u来确认,但是获得由用户分组的资源使用的顶部显示的方法迄今为止是难以捉摸的。

有什么build议么?

编辑:

详细说明:

我不想看到每一条生产线(在极端情况下,每个用户最多可以有15个)。 我想看到每个用户一行 ; 与该用户的累计资源使用情况以及每个用户的一个这样的行。

好吧,因为我很无聊,这似乎是一个有趣的挑战,我写了这个脚本,我认为会做你想要的。 我已经testing过它的基本function,它的目的是灵活的,所以你可以告诉顶部只输出你关心的领域,它应该正确适应。 但是它无疑不处理一个版本的格式化输出的每一个情况。

每个用户的机顶

来自我自己的工作站的示例输出:

  USER VIRT RES SHR %CPU %MEM TIME+ procs ntp 41m 580 444 0 0 0:02.93 1 haldaemo 69m 3m 2m 0 0.1 0:01.85 2 jonhall 12g 803m 230m 4 13.3 134:24.09 47 postgres 471m 1m 788 0 0 0:15.24 5 postfix 117m 7m 6m 0 0.1 0:00.02 3 statd 14m 16 8 0 0 0:00.00 1 root 2g 473m 18m 0 7.7 108:18.75 126 avahi 66m 784 628 0 0 0:00.15 2 dovecot 12m 96 48 0 0 0:00.00 1 daemon 26m 56 32 0 0 0:00.00 2 messageb 23m 1m 812 0 0 0:01.74 1