
Existe algum comando ou forma possível de verificar qual processo causou alta utilização da CPU nas últimas 24 horas, porque ontem à noite às 23h30, data: -30-nov-2022 recebemos um alerta de que a utilização da CPU estava alta, então precisamos descobrir qual processo causa alta utilização.
Responder1
sar
Você pode usarsar. Está incluído como parte do sysstat. Para instalar:
sudo apt-get install sysstat
Em seguida, habilite-o editando /etc/default/sysstat e definindo “ENABLED” como true.
Isso monitora seu sistema e gera um relatório a cada 10 minutos, alternando-os após uma semana. Você pode modificar esse comportamento editando o crontab do sysstat em /etc/cron.d/sysstat ou alterando as configurações de rotação nas configurações do sysstat em /etc/sysstat/sysstat.
Você pode gerar um relatório em tempo real com o seguinte comando:
sar -u 1 3
O sysstat coletará dados de uso da CPU em segundo plano a cada minuto, salvando-os em /var/log/sysstat/. Você pode então importar esses dados para análise, usando um programa de planilha ou uma ferramenta personalizada como o sargraph.
no topo
Uma alternativa é usarno topoque é capaz de armazenar contadores brutos em um arquivo para análise de longo prazo no nível do sistema enível de processo. Por padrão, os arquivos de log diários são preservados por 28 dias. Os relatórios de atividade do sistema podem ser gerados a partir de um arquivo de log usando o comando atopsar.
atop está disponível nos repositórios do Ubuntu por:sudo apt install atop
Responder2
Comando superior
Topo em modo lote
top -b -n 1
Então pesque com Sed
top -b -n 1 | sed -n 8,8p
Responder3
Acesse diretamente o arquivo de log
/var/log/syslog
Acalme-se com grep
cat /var/log/syslog | grep Nov | grep 30 | grep 11: | grep pid=
Responder4
Comando de processo
Status do processo (ps)
ps
ps -eo lstart,pid,hora,usuário,comm,pcpu |\ grep 2022 |\ grep novembro |\ greppm |\ grep11 |\ classificar -n -k 10 -r |\ cabeça --linhas 1
Explicação
ps (status do processo) -e (todos os processos) -o (formatar a saída) lstart (início longo) pid (identificação do processo) tempo (tempo) usuário (o usuário) comm (comando) pcpu (porcentagem de uso da CPU)
A saída é canalizada para outro programa, grep.
grep2022 | grep novembro | grep pm | grep11
Em seguida, classificado por número e coluna contendo a porcentagem de CPU
classificar -n -k 10 -r -n (número) -k (coluna) -r (reverso)
Em seguida, canalizado para head para permitir a passagem da primeira linha apenas
cabeça --linhas 1