Как найти потребление памяти определенного процесса в linux за каждые 5 секунд

Я просто хочу знать, как найти потребление памяти определенного процесса в течение определенного времени (скажем, 5 секунд)

Я новичок в linux. Итак, подробные шаги по выполнению этого будут оценены

4 ответов


вы можете использовать SNMP для получения памяти и использования процессора процесса на определенном устройстве в сети:)

требования:

  • на устройстве, на котором выполняется процесс, должен быть установлен и запущен snmp
  • snmp должен быть настроен для приема запросов, из которых вы будете запускать скрипт ниже (он может быть настроен в snmpd.conf)
  • вы должны знать идентификатор процесса(PID) процесса, который вы хотите монитор

Примечания:

  • хост-ресурсы-MIB:: hrSWRunPerfCPU - это количество centi-секунд общих ресурсов процессора системы, потребляемых этим процессом. Обратите внимание, что в многопроцессорной системе это значение может увеличиваться более чем на одну сотую секунды в одну сотую секунды реального времени (настенные часы).

  • хост-ресурсы-MIB:: hrSWRunPerfMem is общий объем системной памяти, выделенной на этот процесс.

**

процесс мониторинга скрипт:

**

echo "IP: "
read ip
echo "specfiy pid: "
read pid
echo "interval in seconds:"
read interval

while [ 1 ]
do
    date
    snmpget -v2c -c public $ip HOST-RESOURCES-MIB::hrSWRunPerfCPU.$pid
    snmpget -v2c -c public $ip HOST-RESOURCES-MIB::hrSWRunPerfMem.$pid
    sleep $interval;
done

использовать top -p PID где PID-идентификатор процесса. Должна отображаться информация о процессе, включая процент используемой системной памяти. Тип d и целое число в секундах, чтобы изменить частоту обновления.


использовать посмотреть периодически выполнять скрипт. вот пример:

watch 'cat /proc/status' --interval=5

watch 'ps aux' --interval=5

этот ранее опубликованный вопрос:

как измерить фактическое использование памяти приложения или процесса?

похоже, что он может полностью решить Ваш вопрос.

edit: моя личная любимая утилита Linux для проверки использования ресурсов процессов сверху, хотя это может вводить в заблуждение по причинам, которые объясняются в вопросе, который я связал.