Cada um deles, médias de carga de 1, 5 e 15 minutos:
cut -f1 -d' ' /proc/loadavg
cut -f2 -d' ' /proc/loadavg
cut -f3 -d' ' /proc/loadavg
Eu sei que você pode obter a carga do servidor nos últimos 1, 5 e 15 minutos usando comandos como "w". No entanto, gostaria de recuperar automaticamente um desses valores por meio de um cron job para que eu possa anotá-lo em um banco de dados e fazer algumas análises e observar as tendências. Então ... Eu preciso de um comando que produza JUST a carga do servidor para que ele possa ser simplesmente tratado como um número para uso no meu script. Alguém pode me dar um comando que irá analisar a saída de um comando como "w" e retornar apenas o valor de carga do servidor? Eu adoraria ter variações que retornem as médias de 5 e 15 minutos também. Obrigado!
Cada um deles, médias de carga de 1, 5 e 15 minutos:
cut -f1 -d' ' /proc/loadavg
cut -f2 -d' ' /proc/loadavg
cut -f3 -d' ' /proc/loadavg
Algo parecido com isto:
CpuLoadAverage='uptime | awk 'BEGIN { FS=" |, " } { print $11 }''
echo $CpuLoadAverage
por 5 e 15 minutos, basta substituir $ 11 por $ 12 ou $ 13.
Tente isto:
uptime | perl -e 'while (<>) { m/average:\s(\d.\d+),\s(\d.\d+),\s(\d.\d+)/; print $1; }'
para a média de 1 minuto ou substitua $1
por $2
ou $3
para as médias de 5 ou 15 minutos respectivamente.