Запись журнала использования CPU / RAM в течение определенного периода времени для записи в CentOS

Я ищу приложение или строку кода, которая позволит мне наблюдать за процессом, сохранять информацию в нескольких переменных, а затем помещать собранную информацию в файл.

Я пытался с вариантами top но не повезло. Я запускаю несколько виртуальных серверов CentOS, VM – 2 ГБ оперативной памяти, 2 процессора.

  • Как удаленно просматривать рабочий стол Linux из Windows XP?
  • Попытка установить tmux на CentOS 6.x завершилась с ошибкой: «EVBUFFER_EOL_LF» не объявлен
  • Требуется ли VirtualBox / CentOs для правильной работы двух адаптеров?
  • Как остановить сообщения ядра от наводнения моей консоли?
  • Я считаю, что я удалил пользователя MySQL root, как его воссоздать?
  • Невозможно активировать wlan0 в CentOS5.5
  • Сценарий, который работает в течение определенного количества времени при записи строк с информацией в текстовом файле, поэтому в конце я могу иметь таблицу с данными, которые будут работать.

    Я собираюсь подчеркнуть тест сервера, и я хотел бы, чтобы данные составляли некоторые статистические данные.

  • Как отключить адаптер ATI на временной шкале Acer 4810G с помощью ubuntu 9.10
  • Подсчет вхождений в первый столбец файла
  • Как преобразовать ключ .ppk в ключ OpenSSH под Linux?
  • Являются ли размеры страницы памяти и размер кластера файловой системы одинаковыми?
  • Как я могу установить Linux на жесткий диск другого компьютера (тот, который не загружается с компакт-диска)
  • Простой mdadm RAID 1, не активирующий запасной
  • 4 Solutions collect form web for “Запись журнала использования CPU / RAM в течение определенного периода времени для записи в CentOS”

    Стандартного ps достаточно.

     while true; do ps o pcpu,rsz -p $pid | tail -n1 >>usage.log; sleep $interval; done 

    результат:

     0.0 3352 0.3 31640 0.4 36924 0.5 36052 ... 

    Первое поле – это использование ЦП в%, второе – использование физической памяти в килобайтах.

    Я бы посоветовал sadc / sar .

    Если вам небезразлично точное время и требуется процессор в процентах:

     watch --precise -n 1 'top -b -n 1 -p [PID] | tail -n 1 | awk "{print \$9}" >> [PID].log' 

    Вы пытаетесь наблюдать, сколько времени процессора требуется конкретному процессу.

    Я собирался предложить инструмент CPU stat для CentOS? Но это получает его для всей системы, а не только для одного процесса.

    Любой процесс показывает время CPU на выходе ps:

     $ ps -ef | egrep blah root 13988 11152 0 Dec16 ? 00:00:05 sshd: xxx [priv] xxx 14024 13988 0 Dec16 ? 00:06:00 sshd: xxx@pts/0 xxx 14032 14024 0 Dec16 pts/0 07:00:00 -bash root 1194 679 0 Apr24 ? 2-05:15:14 [kswapd0] root 1195 679 0 Apr24 ? 2-06:35:49 [kswapd1] 
    • 00:00:00 – часы / минуты / секунды процессора. Он будет накапливаться.
    • Вам понадобятся разрешения, чтобы увидеть это, если пользователь не вы.
    • Когда это значение превышает день, формат изменяется; Выше 2 дней. Ваша процедура разбора должна будет справиться с этим.

    На этом этапе проанализируйте вывод с помощью Python, заработайте на нем математику с датой, и вы золотой.

    Давайте будем гением компьютера.