monitorando quando um processo começa a usar muita memória

1

Eu tenho um servidor Debian no qual alguns processos são desonestos de vez em quando e começo a consumir muita memória. Como eu poderia monitorar isso no nível do processo para poder definir um alarme? Atualmente monitora quando o servidor começa a usar muita memória, mas gostaria de monitorar o processo individualmente.

    
por Eric L. 04.05.2011 / 10:16

3 respostas

1

É assim que monitora o total de RAM usado pelo apache:

ps -e -orss=,args= | awk '/apache/{ SUM += $1} END { print SUM }'

Altere apenas apache para o seu processo.

    
por 04.05.2011 / 10:28
1

Você pode tentar usar monit

    
por 04.05.2011 / 10:26
1

Use o Nagios e seu plugin "check_procs" com o parâmetro de métrica RSS:

 -r, --rss=RSS
  Only scan for processes with RSS higher than indicated.

Por exemplo:

"check_procs -w 1500000 -c 2000000 --metric=RSS"

Altere w & c para ajustar seus níveis de aviso e crítico para o processo de mau comportamento.

Para ver o RSS atual, use este one-liner e verifique o processo do seu RSS na terceira coluna:

ps -eo pid,ppid,rss,size,vsize,sz,pmem,comm
    
por 04.05.2011 / 10:27