Classifique os 10 principais processos pelo número de threads criados no Linux

2

Eu tenho um servidor Linux / Debian em execução: postgresql, tomcat. Às vezes, não consigo acessar o servidor por ssh.

Quando abro a conexão ssh com meu servidor, posso digitar meu ID de login (root) e senha, mas quando digito minha senha e pressiono enter, não há resposta.

Pela função 'sysinfo', descobri que quando o servidor está nessa situação, existem cerca de 1600 processos (esse valor é de sysinfo.procs) e a média de carga é quase 300 (no caso normal, a média de carga é entre 0 e 1)

O que estou tentando é listar o processo TOP 5 pelo número de segmentos que ele cria. No entanto não consigo encontrar um método fácil. Há alguma maneira que encontrei.

  1. Registre o valor NLWP de ps -efL , para saber qual processo cria muitos segmentos de forma anormal.
  2. Quando a média de carga fica maior e maior, copie todo o arquivo /procs/*/status para o diretório de log e posso saber qual processo tem o maior valor de 'Threads' depois.

Se houver alguma outra sugestão, por favor me avise. Isso me deixa louco porque este servidor Linux não deve falhar o serviço

    
por Wonjae Lee 09.01.2013 / 06:22

1 resposta

3

Tente isto:

$ ps axo nlwp,pid,cmd | sort -rn | head -10

ps ax  - see every process
    o  - format
         nlwp: number of lightweight processes (threads) in the process
    
por 09.01.2013 / 08:11