Comando superior

Comando superior

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

informação relacionada