Monitor de recursos do sistema

Publicado por DAVISON MARCEL PASQUALINI (última atualização em 19/10/2009)

[ Hits: 15.947 ]

Download basico.sh




Estive ajudando um colega da comunidade a fazer um script para verificar os recursos de CPU, DISCO e MEMÓRIA, a brincadeira ficou interessante e resolvi publicar aqui.

Recursos necessários para funcionamento do script: free, vmstat e df.

Testado em Debian.

  



Esconder código-fonte

#---------------------------------------------------------------
#                     MONITOR DE RECURSOS
#---------------------------------------------------------------

cron="N"     # Se for utilizar a crontab mudar para "S" assim o script
             # será executado apenas uma vez e a crontab fará o novo
             # start, quando necessário.

delay="300"  # Se for deixar o script executando pelo loop interno
             # indicar aqui o número de segundos entre as verificações.
             # ex: "300" que correponde a 5 minutos.

ve_filesystem ()
{
df -h | grep -v ^Filesystem | while read line
do
percent=`echo $line | awk '{ print $5 }' | sed 's/%//g'`
if [ "$percent" -gt "70" ]; then 
echo "`date +"%Y-%m-%d %H:%M:%S"` - TIPO: FILESYSTEM - $percent % de Ulilizazao do Filesystem `echo $line | awk '{ print $1 

}'`" >> centraldealertas.txt
fi
done
}

ve_memoria ()
{
percent=`free -m | awk '/^Mem/{ print $3,"*100","/",$2}' | sed 's/ //g' | bc`
if [ "$percent" -gt "70" ]; then 
echo "`date +"%Y-%m-%d %H:%M:%S"` - TIPO: MEMORIA    - $percent % da Memoria utilizada" >> centraldealertas.txt
fi
}

ve_cpu ()
{
percent=`vmstat 1 2 | sed 1,3d | awk '{ print $('$locale') }'`
if [ "$percent" -lt "30" ]; then 
echo "`date +"%Y-%m-%d %H:%M:%S"` - TIPO: CPU LOAD   - `expr 100 - $percent` % de CPU Utilizada" >>  centraldealertas.txt
fi
}


start ()
{
ve_filesystem
ve_memoria
ve_cpu
case "$cron" in
"N" | "n" ) 
sleep "$delay"
start
;;
esac
}

ve_vmstat ()
{
cvstat=`vmstat | sed -e 1,1d -e 3,3d | sed 's/id.*//g' | wc -w`
locale=`expr $cvstat + 1`
}

ve_vmstat
start 

Scripts recomendados

Redimensionar várias imagens ao mesmo tempo

Script simples para compactar e descompactar arquivos

MPlayer em modo texto com desligamento programado do sistema

Mover logs antigos do SAMBA

Script simples em Shell para testar se o kernel está com o patch KPTI habilitado


  

Comentários
[1] Comentário enviado por removido em 19/10/2009 - 21:39h

Boa. Me Ajudou hehe.

[2] Comentário enviado por JeanzinRJ em 07/05/2015 - 09:19h

Parabéns, pelo Script funcionou no CentOS.

abs!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts