Cenário: De repente, meu computador parece lento. O mouse se move, mas as janelas levam muito tempo para abrir, etc. uptime
diz que a carga está em 7,69 e está aumentando.
Qual é a maneira mais rápida de descobrir quais processos são a causa da carga?
Agora, ferramentas "top" e similares não são a resposta, porque mostram o uso da CPU ou da memória, mas não as duas ao mesmo tempo. O que eu preciso é do único comando que eu possa digitar quando acontecer - algo que descobrirá qualquer
O sistema está tentando trocar 8 GB de RAM para o disco porque o processo X ...
ou
processo X procura por todo o disco
ou
o processo X usa 400% da CPU "
Então, o que estou procurando é o iostat, o htop / atop e ferramentas semelhantes que se encontram em um com uma saída como esta:
1235 cp - Disk trashing
87 chrome - Uses 2 GB of RAM
137 nfs_bench - Uses 95% of the network bandwidth
Eu não quero uma ferramenta que me dê alguns números que eu possa analisar, mas uma ferramenta que me diga exatamente qual processo causa a carga atual. Suponha que o usuário na frente do teclado mal saiba escrever "processo", mas o usuário fica rapidamente impressionado quando se trata de "tamanho residente", "memória virtual" ou "ciclo de vida do processo".
Meu argumento é o seguinte: Um usuário percebe um problema. Pode haver milhares de razões ... bem, quase :-) O usuário quer saber a origem do problema.
As soluções atuais me fornecem muitos números, e eu preciso saber o que esses números significam. O que estou procurando é uma ferramenta meta. 99% dos dados são irrelevantes para o problema. Portanto, o que a ferramenta deve fazer é procurar processos que consomem algum recurso e listar apenas aqueles junto com "esse processo precisa de muita CPU, isso produz muitos IRQs, esse processo aloca muita RAM (e ainda está crescendo)".
Esta será uma lista relativamente curta. Será muito mais simples para alguém novo localizar o culpado desta lista do que da saída de, digamos, o htop
que me dá cerca de 5000 números, mas exige que eu próprio dobre processos multiencadeados (eu tenho 50 linhas que dizem VIRT 2750M
mas apenas 16 GB de RAM - a máquina deve se trocar até a morte, mas é claro, isso é uma interpretação incorreta dos dados que podem acontecer rapidamente).
top
meio)