Задача: получать объективный анализ загрузки процессора и памяти на сервере. Иметь возможность детализировать по программам и иметь возможность построения графиков за любой интервал времени. Погрешность - 1 минута.
Вариант решения:
по крону, раз в минуту, в отдельную директорию, записывать результат работы команды ps axu. Название файла - timestamp в Unix формате.
Запись в файле будет иметь следующий вид:
, где:
%CPU - загрузка процессора в процентах;
VSZ - общее кол-во виртуальной памяти, отведенной данному процессу;
RSS - реальное количество занятой физ. памяти;
COMMAND - имя процесса.
Во-первых, сумма значений колонки %CPU - даст суммарную загрузку проца(я предполагаю).
Во-вторых, сумма значений колонки RSS - даст суммарный объём задействованной памяти(я предполагаю).
В-третьих, можно построить график использования процессора и памяти какой-то программой, парся строчки только с нужным процессом.
В-четвёртых, можно составить ТОП10 самых требовательных программ на основе полученного лога.
Чтобы директория не забила весь винт, старые логи можно удалять, скажем, старше 7-и суток. За сутки будет генериться 1440 файлов.
Что скажут спецы? Нормальное решение или я велосипед изобретаю?
Если раз в минуту, то лучше сразу этот кусочек парсить и складывать в базу MySQL (желательно на другой машине). Я так думаю.
ОтветитьУдалитьДля freebsd лучше accounting который покажет более точные данные.
ОтветитьУдалитьps aux многое не покажет, что делать если скрипты работает от apache?
а как же mysql?
Чем nagios не угодил?
ОтветитьУдалитьdofollowblog, не лучше. Во-первых, это тормозит. Во-вторых, MySQL может не работать.
ОтветитьУдалитьiBBi, у меня линукс.
SEO Empire, nagios покажет график загрузки CPU и MEM для любой выбранной программы?
Есть же много готовых систем мониторинга. Вот тот же нагиос кто-то советует.
ОтветитьУдалитьЯ например у себя на серваке юзаю Cacti, который по сути является навороченной веб-мордой над rrdtools. Не знаю как нагиос, сам не щупал, а вот какти аццки гибкая штука. В дефолтном состоянии он позволяет делать большинство из того что тебе нужно, остального можно добиться при помощи напильника.
Боян
ОтветитьУдалитьaccouting есть и в linux
man sa
man sar
Рекомендую аккаунтинг процессов, очень удобная вещь. Предыдущему оратору +100.
ОтветитьУдалить