Запуск отображения использования ресурсов, сгруппированных по пользователю?
Мы недавно реструктурировали часть нашей настройки веб-хостинга; разделение ряда приложений на несколько пользователей на одной (виртуальной) машине, чтобы лучше выявлять проблемы использования ресурсов и тому подобное.
Однако на данном этапе проблема заключается в том, что, хотя у нас есть кандидат на неприятное поведение, это можно легко подтвердить, используя top -u
до сих пор не получен способ получения схожего сверху отображения использования ресурсов, сгруппированного пользователем.
Какие-либо предложения?
Редактировать:
Разработать:
Я не хочу видеть каждую строку процесса (их довольно много; до 15 на пользователя в крайних случаях); Я хочу видеть одну строку на пользователя; с совокупным использованием ресурсов для этого пользователя и одной такой строкой для каждого пользователя.
1 ответ
Хорошо... потому что мне было скучно, и это казалось забавным испытанием, я написал этот сценарий, который, я думаю, будет делать то, что вы хотите. Я протестировал его базовую функциональность, и он должен быть гибким, так что вы можете указать top выводить только те поля, которые вас интересуют, и он должен правильно адаптироваться. Но это, несомненно, не обрабатывает каждый случай форматирования вывода из каждой версии top.
Пример вывода с моей рабочей станции:
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