myhand

Рейтинг
278
Регистрация
16.09.2009
Himiko:
Вы подскажите, как можно рисовать графики нагрузки по юзерам, включая i/o.
Причём "простыми средствами".

Всё это теоретически возможно, но никак не "простыми средствами".

Чем больше вы перекласифицируетесь в манагера - тем более разным у вас станет представление простоте с людьми, занимающимися техническими задачами. Обычное дело.

Himiko:

А может стоит сначала у ТС всё выяснить?

КО проснулся. Пытались уже. Прочитайте внимательно кого-то, кроме себя любимого.

Himiko:
Судя по его постам, он хочет полностью контролировать пользователей на сервере. И уточнил "Есть ли простые решения".

Я вам не припятствую что-то "судить" и всячески применять свою телепатию. Но я-то тут причем?

Himiko:
Думаю, что максимально подробную. Так все хотят :)

Вьюношь, вы просто не понимаете сколько подробной статистики можно включить в linux.

"Максимально подробную" = "я не знаю чо мне надо".

Himiko:
Фаервол есть. Как вы подсчитаете нагрузку с одного ip от виртуалхостов фаерволом?

-m owner

Himiko:
MySQL как будете мерить по юзерам? Процессы того же sendmail ?
Там дофига чего, что относится к конкретному юзеру.

Вы телепат? Я пока не услышал ничего ни о mysql, ни тем более о sendmail.

Толком даже не уточнили по каким "юзерам" что именно интересует.

Himiko:
И главный вопрос - чем рисовать графики по юзерам? Именно, чтобы добавленные юзеры там же появлялись.

rrd, gd, gnuplot, список длинный.

Как это сделать чтобы "там появлялись" и чтобы такое представление информации было полезным - вопрос открытый.

Давайте так, если у вас есть что конкретное предложить - просто это сделайте. Не пытайтесь сделать вид, что другие взялись решать для ТС задачу "сделай то, не знаю что", ага?

"Вообще" - и проверка рейд ничем не помешает.

Himiko:
Я тоже вижу слова. Но полагаю, что ТС хочет получать подробную статистику по каждому юзеру.

Какую? "Хочу зашибись!" (тм)

Himiko:

Та же сеть. Здесь можно только по логам собирать статистику потребления трафиках. Никаких графиков в мегабитах на каждого юзера просто так не сделать.

1. Не думаю, что только это можно назвать "нагрузкой на сеть"

2. Помимо логов есть файервол. Исходящий трафик как по логам посчитаете?

Himiko:
Нагрузка на i/o. ТС хочет статистику по чтению и записи. Кто-то может подсказать, как разделить i/o по юзерам на общем сервере? (с детализацией по чтению и записи)

iotop умеет per process показывать.

Andreyka:
В аккаунтинге есть информация по чтению и записи блоков

Да, см. iotop. Только утилиты acct пока не научились показывать ее раздельно.

Himiko:
Смотрели, что ТС нужно?

Смотрели, но лень уточняющие вопросы задавать.

Himiko:
Такие параметры снять не получится или слишком уж много заморочек будет.

Рад, что вы "параметры" углядели. Не подскажите какие? Я вот пока вижу только слова, без понимания их смысла.

Что за "нагрузка на сеть", к примеру?

Но этот "грамотный" - настроил сервер так, что его кладет проверка рейд. Моя думать, слешдот его совсем в своп загонит, если он на ровном месте падает.

Pilat:
Время сбора информации по свопу этим скриптом довольно большое

Это скрипт, в общем-то. На С будет побыстрее и top уже делает похожие по сложности вещи.

Тем более, смотреть одну строчку в /proc/<pid>/status.

stepan007:
Конфиг апача тоже прикрепил. Сейчас в среднем больше 200 free slots, а еще idle slots.

ListenBacklog 4 - вот ваша причина, господин аптимизатор :D Увеличьте backlog (верните умолчание!), уменьшите MaxClients.

stepan007:

find: missing argument to `-printf'

Что-то вы накопипастили не полностью/не то. Проверьте.

stepan007:
Прошу также подсказать по nginx - ссылка.

Может backlog на бакенде переполнился, потому соединения не происходит. Каков конфиг апача?

Pilat:
Вот в том то и дело, что эта колонка к свопу имеет небольшое отношение, точнее реально вообще не имеет.

Имеет, название. Ну, на самом деле - чуть больше чем название, если подумать ;)

А так, да. Видимо остается подождать, когда top научится читать VmSwap из /proc/<pid>/status. Это поле добавили уже в 2.6.34.

stepan007:
myhand,
Из-под рута есть доступ во все эти smaps, и скрипт запускаю также из-под рута.

Странно, этот файлик добавили в 2.6.14. И вроде в Centos 5 я поля Swap: в файлике вижу.

Попробуйте так:

#!/bin/sh

# Get current swap usage for all running processes
OVERALL=0
if ! cat 1>/dev/null 2>&1 < /proc/1/smaps
then
echo "Can't access to /proc/<pid>/smaps, exiting" >&2
exit 1
fi
printf "Swap usage[kB]\tProcess[PID]\n"
printf "============================\n"
for PID in $(find /proc -maxdepth 1 -type d -name '[0-9]*' -printf "%f\n")
do
PROGNAME=`ps -p $PID -o comm --no-headers`
SUM=$(awk '/^Swap/{s=s+$2}END{print s}' /proc/$PID/smaps 2>/dev/null)
if [ "$SUM" != "0" -a -n "$SUM" ]
then
printf "$SUM\t\t$PROGNAME[$PID]\n"
OVERALL=$(($OVERALL + $SUM))
fi
done
printf "============================\n"
echo "Overall swap used: $OVERALL kB"
Всего: 4890