Monitor de recursos do sistema
Publicado por DAVISON MARCEL PASQUALINI (última atualização em 19/10/2009)
[ Hits: 16.072 ]
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.
#--------------------------------------------------------------- # 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
Relatório Diario Sarg com Compactação!
Script para configuração inicial do seu Linux
Recarregando as configurações do SQUID sem perder as conexões
Como aprovar Pull Requests em seu repositório Github via linha de comando
Como gerar um podcast a partir de um livro em PDF
Automatizando digitação de códigos 2FA no browser
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Organizando seus PDF com o Zotero
Erro no realm join [Resolvido]
Um programa para baixar vídeos: Parabolic
Como Definir o Painel Principal em Múltiplos Monitores no Linux Mint
trocar linhas [RESOLVIDO] (11)
tentando instalar em um notebook antigo o Linux LegacyOS_2023... (7)
BlueMail não abre no Kubuntu 25.04 (1)
Driver de rede realtek 8821ce bugado (8)
Atalhos duplicados (sobras de instalações anteriores) [RESOLVIDO] (5)