Monitorar o uso da CPU do usuário

0

Gostaria de executar um script em 3 servidores executando o Ubuntu 16.04 Server, que registra o uso de CPU de cada usuário. Este pode ser um log muito "áspero", e. executando uma vez por hora, verificando quantos núcleos são usados por qual usuário e enviando para .txt ou .csv.

Mais tarde eu poderia pós-processar esses logs com python para obter o resultado final que deveria ser assim:

  • Usuário: A; Total de horas de CPU: 500 (300 na máquina A, 200 na máquina B, 0 na máquina C)
  • Usuário: B; Total de horas de CPU: 800 (300 na Máquina A, 200 na Máquina B, 300 na máquina C) ...

Alguém pode me dar uma dica sobre como fazer com que os servidores registrem os dados necessários?

    
por P. Hoody 15.05.2017 / 17:03

1 resposta

0

Não tenho certeza de quais detalhes você deseja coletar, no entanto, em situações semelhantes, sugiro usar sysstat .

sudo apt-get install sysstat

você pode usar o comando sar para ver o que está acontecendo. Ele também instala um script cron : /etc/cron.d/sysstat e salva os dados em /var/log/sarX .

Você pode usar sar -q para obter um relatório de carregamento médio ou -P para estatísticas por processador, etc.

Exemplo:

01:36:25 PM       CPU     %user     %nice   %system   %iowait    %steal     %idle
01:36:26 PM         1      8.08      0.00      2.02      1.01      0.00     88.89

Leia mais: exemplos, saídas, ...

    
por Ravexina 15.05.2017 / 17:30