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

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

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

4 ответа

Решение

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

Требования:

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

Заметки:

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

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

**

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

**

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-утилита для проверки использования ресурсов процессами стоит на первом месте, хотя она может вводить в заблуждение по причинам, объясненным в связанном вопросе.

Другие вопросы по тегам