Как отслеживать всплески памяти?

Как отслеживать всплески памяти?

У меня есть приложение, работающее на облаке rackspace (ubuntu 10.04). По какой-то причине за последние 3 ночи память резко возросла, а затем стабилизировалась примерно на 7 часов, прежде чем в конечном итоге упала. Кажется, это началось в полночь и продолжалось до 7 утра (не обращайте внимания на время на графике — оно отличается на 4 часа).

альтернативный текст

ПросматриваяМуниндиаграмме, похоже, не наблюдается никакой повышенной активности в MySQL, а трафик Ethernet вообще не увеличивается в течение этого времени (что, по-видимому, исключает что-то вроде бота или сканера).

Какие инструменты доступны для Linux для устранения подобных неполадок?

решение1

Я не совсем уверен, что это будет идеальное решение, но пакет учета процессов (чаще всего называемый psacct или acct) способен вести учет того, кто (какая учетная запись) что (какую программу) запускает. Это может помочь вам выяснить, что запущено в указанное вами время.

решение2

В целом я не знаю, какой инструмент мог бы вам помочь, кроме psрегулярного ведения журнала и последующего анализа активности процессов.

Однако я могу предположить, что пики около 6:00 утра на вашем графике связаны с ежедневными заданиями cron в Ubuntu по умолчанию. На моей машине /etc/crontabнастроен daily.dна запуск в 6:25 утра. Но вы сказали, что мы должны игнорировать время, поэтому очевидный вопрос: есть ли у вас задания cron?

решение3

Мой ответ по умолчанию на такие вопросы будет sar(Отчет о системной активности) изsysstatупаковка.

Но насколько я знаю, sarне собирает эквивалент вывода ps. Так что, возможно, комбинация sarи ответ elmarcos (регулярно захватывать вывод ps) помогут.

РЕДАКТИРОВАТЬ:

Стив Д. упомянул pidstatвэтот вопрос. Кажется, это больше подходит для ваших нужд.

Связанный контент