У меня есть сервер Debian, на котором некоторые процессы время от времени выходят из строя и начинают потреблять слишком много памяти. Как я могу контролировать это на уровне процесса, чтобы установить будильник? В настоящее время я отслеживаю, когда сервер начинает использовать слишком много памяти, но я хотел бы контролировать процесс индивидуально.
Используйте Nagios и его плагин check_procs с параметром RSS-metric:
-r, --rss=RSS
Only scan for processes with RSS higher than indicated.
Например.:
"check_procs -w 1500000 -c 2000000 --metric=RSS"
Измените w & c в соответствии с уровнями предупреждений и критических значений для процесса некорректного поведения.
Чтобы увидеть текущий RSS, используйте этот однострочный файл и проверьте его RSS в третьем столбце:
ps -eo pid,ppid,rss,size,vsize,sz,pmem,comm
Вы можете попробовать использовать контролировать
Вот как я отслеживаю общий объем оперативной памяти, используемой apache:
ps -e -orss=,args= | awk '/apache/{ SUM += $1} END { print SUM }'
Просто измени apache
к вашему процессу.