Armazenando / calculando médias de carga histórica

2

Quando executo uptime , recebo uma saída semelhante à seguinte:

 07:50:39 up 13 days,  5:00,  1 user,  load average: 0.00, 0.02, 0.00

Existe uma maneira, diferente de executar uptime a cada X minutos, para obter uma média de carga mais histórica?

Gostaria de poder representar graficamente as médias de carga na última semana, mês, etc.

Talvez eu esteja procurando no lugar errado?

Atualizar
Não posso escolher entre collectd (@ david spillet ) ou munin (@ icapan ) - então, por enquanto, vou usar os dois (em máquinas diferentes).

Obrigado :)

    
por warren 21.09.2009 / 09:52

4 respostas

5

Eu uso collectd para registrar a carga do sistema entre vários outros parâmetros. Ele armazena os dados em lojas RRD que podem ser representados graficamente e analisados de outra forma usando as muitas ferramentas e scripts disponíveis. Eu uso uma versão modificada de este script para o meu gráfico ( saída da amostra ).

O Collectd tem plugins para monitorar muitas coisas (tudo o que é comumente solicitado e algumas coisas no topo), e criar o seu próprio não deve ser difícil se você precisar de algo especializado, então é uma ferramenta muito flexível. Configurar os gráficos em rrd.cgi é um processo muito manual, embora não seja difícil, embora você possa encontrar uma ferramenta mais conveniente para trabalhar com os arquivos RRD mantidos pelo collectd.

    
por 21.09.2009 / 11:28
4

Munin é a maneira mais fácil de obter gráficos de tempo de atividade com o mínimo de esforço na instalação e configuração. Eu também uso em cima para uso de cpu agregado por algum processo, mas isso não é o que você pediu.

    
por 21.09.2009 / 12:15
2

Veja man sadc (coletor de dados de atividade do sistema) e man sar (colete, relate ou salve as informações de atividade do sistema).

No meu sistema Ubuntu, tudo o que eu tinha que fazer para ativar as coleções de dados, desde que o trabalho cron já estava em vigor, era editar /etc/default/sysstat e alterar essa linha para "true":

ENABLED="true"

Para exibir informações de carga semelhantes a uptime , faça:

sar -q

Para exibir a saída padrão para um intervalo de tempo e data específicos (aqui, o 20º dia do mês):

sar -s 11:00:00 -e 14:00:00 -f /var/log/sysstat/sa20
    
por 21.09.2009 / 10:32
0

Dados médios de carga podem ser encontrados em /proc/loadavg pseudo-file. O formato talvez seja mais adequado para um processamento automático. Além do formato, esses são exatamente os mesmos números que você recebe quando executa o comando uptime .

Uma vez atrás, para resolver um problema semelhante ao seu, eu apenas agendei um script bash com cron para ler /proc/loadavg e emitir um comando rrdtool update para atualizar um banco de dados RRD.

    
por 21.09.2009 / 12:44