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

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

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

Ответ 1

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

Требования:

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

Примечания:

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

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

**

Мониторинг процесса script:

**

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

Ответ 2

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

Ответ 3

используйте watch, чтобы периодически выполнять ваш script. вот пример:

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

watch 'ps aux' --interval=5

Ответ 4

Этот ранее заданный вопрос:

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

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

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