Gera estatísticas de consumo de memória e cpu.
Publicado por Alessandro Dias 09/04/2007
[ Hits: 18.964 ]
Download gera_estatistica_serv-01.sh
Gera estatísticas de consumo de memória e cpu, registrando em um arquivo.
Pode-se fazer um script para plotar esses pontos em um gráfico. Em breve publicarei um script PHP para fazer isso.
#!/bin/bash # ############################################################################### # Script GERA_ESTATISTICAS DIARIAS v1.0 # # # # Autor: Alessandro Dias # ############################################################################### # IP="192.168.0.1" BASEDIR=/var/www/html/estatisticas clear echo "*********************************************************************************************" echo "* Programa GERA_ESTATISTICAS V1.0 *" echo "*********************************************************************************************" echo "Autor: Alessandro Dias" echo "---------------------------------------------------------------------------------------------" if [ "$IP" != "" -a "$IP" != " " ]; then CPUIDLE=`snmpget -v 3 -u alessandro -l authPriv -a MD5 -A senhaauth -x DES -X senhapriv $IP "ssCpuIdle.0" |cut -d "=" -f 2 |cut -d ":" -f 2` CPUUSER=`snmpget -v 3 -u alessandro -l authPriv -a MD5 -A senhaauth -x DES -X senhapriv $IP "ssCpuUser.0" |cut -d "=" -f 2 |cut -d ":" -f 2` CPUSYS=`snmpget -v 3 -u alessandro -l authPriv -a MD5 -A senhaauth -x DES -X senhapriv $IP "ssCpuSystem.0" |cut -d "=" -f 2 |cut -d ":" -f 2` CPUUSED=`expr 100 \- $CPUIDLE` echo -e "ip=\"$IP\"\n" echo "cpu.idle=$CPUIDLE %" echo "cpu.user=$CPUUSER %" echo "cpu.sys=$CPUSYS %" echo -e "cpu.used=$CPUUSED %\n" MEMTOT=`snmpget -v 3 -u alessandro -l authPriv -a MD5 -A senhaauth -x DES -X senhapriv $IP "memTotalReal.0" |cut -d "=" -f 2 |cut -d ":" -f 2` MEMFREE=`snmpget -v 3 -u alessandro -l authPriv -a MD5 -A senhaauth -x DES -X senhapriv $IP "memAvailReal.0" |cut -d "=" -f 2 |cut -d ":" -f 2` MEMUSED=`expr $MEMTOT \- $MEMFREE` MEMUSED_PERC=`expr $MEMUSED \* 100 \/ $MEMTOT` MEMSHARED=`snmpget -v 3 -u alessandro -l authPriv -a MD5 -A senhaauth -x DES -X senhapriv $IP "memShared.0" |cut -d "=" -f 2 |cut -d ":" -f 2` MEMBUFFER=`snmpget -v 3 -u alessandro -l authPriv -a MD5 -A senhaauth -x DES -X senhapriv $IP "memBuffer.0" |cut -d "=" -f 2 |cut -d ":" -f 2` MEMCACHED=`snmpget -v 3 -u alessandro -l authPriv -a MD5 -A senhaauth -x DES -X senhapriv $IP "memCached.0" |cut -d "=" -f 2 |cut -d ":" -f 2` MEMUSED_BUF=`expr $MEMUSED \- $MEMSHARED \- $MEMBUFFER \- $MEMCACHED` MEMUSED_BUF_PERC=`expr $MEMUSED_BUF \* 100 \/ $MEMTOT` echo "mem.tot=$MEMTOT KB" echo "mem.free=$MEMFREE KB" echo "mem.used=$MEMUSED KB" echo "mem.used.perc=$MEMUSED_PERC %" echo "mem.shared=$MEMSHARED KB" echo "mem.buffer=$MEMBUFFER KB" echo "mem.cached=$MEMCACHED KB" echo "mem.used-buf/cache=$MEMUSED_BUF KB" echo "mem.used-buf/cache.perc=$MEMUSED_BUF_PERC %" DIA=`date +%d` DIA_SEM=`date +%a` MES=`date +%b` ANO=`date +%Y` HORA=`date +%k` if [ "$HORA" == "0" -o "$HORA" == "00" -o "$HORA" == "24" ]; then rm -f $BASEDIR/diaria/$IP/$DIA/pts_cpu rm -f $BASEDIR/diaria/$IP/$DIA/pts_mem rm -f $BASEDIR/diaria/$IP/$DIA/pts_mem_buf rm -f $BASEDIR/diaria/$IP/$DIA/rangex rm -f $BASEDIR/diaria/$IP/$DIA/graph.php fi if [ ! -d $BASEDIR/diaria/$IP/$DIA ]; then mkdir -p $BASEDIR/diaria/$IP/$DIA chmod 777 $BASEDIR/diaria/$IP/$DIA fi if [ ! -f $BASEDIR/diaria/$IP/$DIA/pts_cpu ]; then touch $BASEDIR/diaria/$IP/$DIA/pts_cpu chmod 666 $BASEDIR/diaria/$IP/$DIA/pts_cpu fi if [ ! -f $BASEDIR/diaria/$IP/$DIA/pts_mem ]; then touch $BASEDIR/diaria/$IP/$DIA/pts_mem chmod 666 $BASEDIR/diaria/$IP/$DIA/pts_mem fi if [ ! -f $BASEDIR/diaria/$IP/$DIA/pts_mem_buf ]; then touch $BASEDIR/diaria/$IP/$DIA/pts_mem_buf chmod 666 $BASEDIR/diaria/$IP/$DIA/pts_mem_buf fi echo "$HORA,$CPUUSED" >> $BASEDIR/diaria/$IP/$DIA/pts_cpu echo "$HORA,$MEMUSED_PERC" >> $BASEDIR/diaria/$IP/$DIA/pts_mem echo "$HORA,$MEMUSED_BUF_PERC" >> $BASEDIR/diaria/$IP/$DIA/pts_mem_buf if [ ! -f $BASEDIR/diaria/$IP/$DIA/rangex ]; then echo "24,18,12,12,100,100,1,1,/,$IP,$DIA/$MES/$ANO ($DIA_SEM)" > $BASEDIR/diaria/$IP/$DIA/rangex chmod 666 $BASEDIR/diaria/$IP/$DIA/rangex fi if [ ! -f $BASEDIR/diaria/$IP/$DIA/graph.php ]; then cp -f $BASEDIR/diaria/graph.php $BASEDIR/diaria/$IP/$DIA/ chmod 666 $BASEDIR/diaria/$IP/$DIA/graph.php fi else echo -e "\nSINTAXE CORRETA: \n ./gera_estatisticas.sh <IP>\n" fi echo -e "---------------------------------------------------------------------------------------------\n"
Cluster multi-master com MariaDB 10.1 + Galera
Enviando comandos para máquinas da rede
Gera estatísticas de tráfego de pacotes nas interfaces de um servidor linux via SNMPv3.
Pequeno, simples mas interessante chat desenvolvido totalmente em shell script.
Script de backup para fita DAT
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
Script de montagem de chroot automatica
Conselho distribuiçao brasileira (0)
Não consigo instalar distro antiga no virtualbox nem direto no hd (31)









