Ejemplos RRdtool

De Wikillano

Gráfico de Memoria del equipo.

Creación de la bbdd

rrdtool create memoria.rrd -s 300 \
DS:memt:GAUGE:600:0:U \
DS:memu:GAUGE:600:0:U \
DS:memf:GAUGE:600:0:U \
DS:memc:GAUGE:600:0:U \
RRA:AVERAGE:0.5:1:600    \
RRA:AVERAGE:0.5:6:700    \
RRA:AVERAGE:0.5:24:775   \
RRA:AVERAGE:0.5:288:797  \
RRA:MIN:0.5:1:600        \
RRA:MIN:0.5:6:700        \
RRA:MIN:0.5:24:775       \
RRA:MIN:0.5:288:797      \
RRA:MAX:0.5:1:600        \
RRA:MAX:0.5:6:700        \
RRA:MAX:0.5:24:775       \
RRA:MAX:0.5:288:797

CON SWAP

rrdtool create memoria.rrd -s 300 \
DS:memt:GAUGE:600:0:U \
DS:memu:GAUGE:600:0:U \
DS:memf:GAUGE:600:0:U \
DS:memc:GAUGE:600:0:U \
DS:swap:GAUGE:600:0:U \
RRA:AVERAGE:0.5:1:600    \
RRA:AVERAGE:0.5:6:700    \
RRA:AVERAGE:0.5:24:775   \
RRA:AVERAGE:0.5:288:797  \
RRA:MIN:0.5:1:600        \
RRA:MIN:0.5:6:700        \
RRA:MIN:0.5:24:775       \
RRA:MIN:0.5:288:797      \
RRA:MAX:0.5:1:600        \
RRA:MAX:0.5:6:700        \
RRA:MAX:0.5:24:775       \
RRA:MAX:0.5:288:797 

Script que recoge la info y la añade a la bbdd


#!/bin/bash

MEMT=`free  -b | grep Mem: | awk '{ print $2 }'`
MEMU=`free  -b | grep Mem: | awk '{ print $3 }'`
MEMF=`free  -b | grep Mem: | awk '{ print $4 }'`
MEMC=`free  -b | grep Mem: | awk '{ print $7 }'`

echo $MEMT
echo $MEMU
echo $MEMF
echo $MEMC
/usr/bin/rrdtool update /etc/rrdtool/memoria/memoria.rrd N:$MEMT:$MEMU:$MEMF:$MEMC

Script para el gráfico

#!/bin/sh
sleep 5
rrd=/etc/rrdtool/memoria/memoria.rrd
last=`rrdtool last $rrd`
file1=/var/www/dmem.png
fecha=`date +"%c %Z"`
width=600
height=250

# 1dia
/usr/bin/rrdtool graph $file1 --imgformat PNG --start -1day --end $last \
--width $width --height $height  \
--alt-autoscale-max \
--lower-limit=0 \
--vertical-label="MEMORIA" \
--base=1024 \
DEF:memt=$rrd:memt:AVERAGE \
DEF:memu=$rrd:memu:AVERAGE \
DEF:memf=$rrd:memf:AVERAGE \
DEF:memc=$rrd:memc:AVERAGE \
AREA:memt#AAA8E4:"Memoria Total "  \
GPRINT:memt:MIN:"Minimo\:%8.2lf %s"  \
GPRINT:memt:MAX:"Maximo\:%8.2lf %s"  \
GPRINT:memt:LAST:"Ultimo\:%8.2lf %s\n" \
AREA:memu#EEE8A1:"Memoria Used  " \
GPRINT:memu:MIN:"Minimo\:%8.2lf %s"  \
GPRINT:memu:MAX:"Maximo\:%8.2lf %s"  \
GPRINT:memu:LAST:"Ultimo\:%8.2lf %s\n"  \
AREA:memf#FF0000:"Memoria Free  " \
GPRINT:memf:MIN:"Minimo\:%8.2lf %s"  \
GPRINT:memf:MAX:"Maximo\:%8.2lf %s"  \
GPRINT:memf:LAST:"Ultimo\:%8.2lf %s\n"  \
AREA:memc#46F2A2:"Memoria Cached" \
GPRINT:memc:MIN:"Minimo\:%8.2lf %s"  \
GPRINT:memc:MAX:"Maximo\:%8.2lf %s"  \
GPRINT:memc:LAST:"Ultimo\:%8.2lf %s"

Gráfico de Cpu del equipo. Creación de la bbdd

rrdtool create cpu.rrd -s 300 \
DS:user0:GAUGE:600:0,00:100,00 \
DS:sys0:GAUGE:600:0,00:100,00 \
RRA:AVERAGE:0.5:1:600    \
RRA:AVERAGE:0.5:6:700    \
RRA:AVERAGE:0.5:24:775   \
RRA:AVERAGE:0.5:288:797  \
RRA:MIN:0.5:1:600        \
RRA:MIN:0.5:6:700        \
RRA:MIN:0.5:24:775       \
RRA:MIN:0.5:288:797      \
RRA:MAX:0.5:1:600        \
RRA:MAX:0.5:6:700        \
RRA:MAX:0.5:24:775       \
RRA:MAX:0.5:288:797

Script que recoge la info y la añade a la bbdd


#!/bin/bash

USER0=`mpstat -P 0 1 5 | grep Media | awk '{ print $3 }'`
SYS0=`mpstat -P 0 1 5 | grep Media | awk '{ print $5 }'`

USER0=`echo $USER0 | sed 's%,%.%'`
SYS0=`echo $SYS0 | sed 's%,%.%'`

echo $USER0
echo $SYS0
/usr/bin/rrdtool update /etc/rrdtool/cpu/cpu.rrd N:$USER0:$SYS0

Script para el gráfico

#!/bin/sh
sleep 5
rrd=/etc/rrdtool/cpu/cpu.rrd
last=`rrdtool last $rrd`
file1=/var/www/dcpu.png
fecha=`date +"%c %Z"`
width=600
height=250


# 1dia
/usr/bin/rrdtool graph $file1 --imgformat PNG --start -1day --end $last \
--width $width --height $height  \
--alt-autoscale-max \
--lower-limit=0 \
--vertical-label="Carga en %" \
DEF:usercpu0=$rrd:user0:AVERAGE \
DEF:syscpu0=$rrd:sys0:AVERAGE \
LINE2:usercpu0#CD5C27:"Carga cpu0 user "  \
GPRINT:usercpu0:MIN:"Minimo\:%3.2lf "  \
GPRINT:usercpu0:MAX:"Maximo\:%3.2lf "  \
GPRINT:usercpu0:LAST:"Ultimo\:%3.2lf \n" \
LINE2:syscpu0#E0E02D:"Carga cpu0 Sys   " \
GPRINT:syscpu0:MIN:"Minimo\:%3.2lf "  \
GPRINT:syscpu0:MAX:"Maximo\:%3.2lf "  \
GPRINT:syscpu0:LAST:"Ultimo\:%3.2lf "

Gráfico de Disco del equipo.

rrdtool create hd.rrd -s 300 \
DS:roott:GAUGE:600:0:U \
DS:rootu:GAUGE:600:0:U \
RRA:AVERAGE:0.5:1:600    \
RRA:AVERAGE:0.5:6:700    \
RRA:AVERAGE:0.5:24:775   \
RRA:AVERAGE:0.5:288:797  \
RRA:MIN:0.5:1:600        \
RRA:MIN:0.5:6:700        \
RRA:MIN:0.5:24:775       \
RRA:MIN:0.5:288:797      \
RRA:MAX:0.5:1:600        \
RRA:MAX:0.5:6:700        \
RRA:MAX:0.5:24:775       \
RRA:MAX:0.5:288:797

Script que recoge la info y la añade a la bbdd

#!/bin/bash
ROOTT=`df -k | grep /dev/sda2 | awk ' { print $2 } '`
ROOTU=`df -k | grep /dev/sda2 | awk ' { print $3 } '`

ROOTT=`expr $ROOTT "*" 1000`
ROOTU=`expr $ROOTU "*" 1000`

echo $ROOTT
echo $ROOTU
/usr/bin/rrdtool update /etc/rrdtool/hd/hd.rrd N:$ROOTT:$ROOTU
 
ROOTT=`expr $ROOTT "*" 1000`
ROOTU=`expr $ROOTU "*" 1000


Antes de añadir la info a la bbdd paso los KB a Bytes, ya que rrdtool trabaja en bytes y según la base que pongamos el determina la unidad, %s en el gráfico se encarga de eso.

Script para el gráfico

#!/bin/sh
sleep 5
rrd=/etc/rrdtool/hd/hd.rrd
last=`rrdtool last $rrd`
file1=/var/www/dhd.png
fecha=`date +"%c %Z"`
width=600
height=250
 

# 1dia
/usr/bin/rrdtool graph $file1 --imgformat PNG --start -1day --end $last \
--width $width --height $height  \
--alt-autoscale-max \
--lower-limit=0 \
--vertical-label="Particion /" \
--base=1000 \
DEF:roott=$rrd:roott:AVERAGE \
DEF:rootu=$rrd:rootu:AVERAGE \
AREA:roott#11AB23:"Disco en Total  "  \
GPRINT:roott:MIN:"Minimo\:%8.2lf %s"  \
GPRINT:roott:MAX:"Maximo\:%8.2lf %s"  \
GPRINT:roott:LAST:"Ultimo\:%8.2lf %s\n" \
AREA:rootu#E9701F:"Disco en uso    "  \
GPRINT:rootu:MIN:"Minimo\:%8.2lf %s"  \
GPRINT:rootu:MAX:"Maximo\:%8.2lf %s"  \
GPRINT:rootu:LAST:"Ultimo\:%8.2lf %s\n"

--base=1000 \

He tenido que poner base = 1000 ya que la salida del DF no correspondia con la del gráfico ya que multiplica por 1000 no por 1024

Para realizar estar tareas más facil he creado 2 scripts uno para que recoga los datos y los añada en la bbdd y el segundo para que pinte las graficas, estos script los debemos poner (despues de adecuarlos a nuestro entorno) en el CRON.


Script de recogida de INFO


#!/bin/bash

#BBDD
MEMORIA=/data/rrdtool/memoria.rrd
DISCO=/data/rrdtool/hd.rrd
CPU=/data/rrdtool/cpu.rrd
PROCESOS=/data/rrdtool/proc.rrd
RED=/data/rrdtool/red.rrd
###########################MEMORIA############################## 

MEMT=`free -b | grep Mem: | awk '{ print $2 }'`
MEMU=`free -b | grep Mem: | awk '{ print $3 }'`
MEMF=`free -b | grep Mem: | awk '{ print $4 }'`
MEMC=`free -b | grep Mem: | awk '{ print $7 }'`
SWAP=`free -b | grep Swap: | awk '{ print $3 }'`

/usr/bin/rrdtool update $MEMORIA N:$MEMT:$MEMU:$MEMF:$MEMC:$SWAP

############################ESPACIO EN DISCO################################

ROOTT=`df -k | grep /dev/sda2 | awk ' { print $2 } '`
ROOTU=`df -k | grep /dev/sda2 | awk ' { print $3 } '`
DATAT=`df -k | grep /dev/sda12 | awk ' { print $2 } '`
DATAU=`df -k | grep /dev/sda12 | awk ' { print $3 } '`
DUNGEONST=`df -k | grep /dev/sda11 | awk ' { print $2 } '`
DUNGEONSU=`df -k | grep /dev/sda11 | awk ' { print $3 } '`
VMWARET=`df -k | grep /dev/sdb6 | awk ' { print $2 } '`
VMWAREU=`df -k | grep /dev/sdb6 | awk ' { print $3 } '`
XENT=`df -k | grep /dev/sdc6 | awk ' { print $2 } '`
XENU=`df -k | grep /dev/sdc6 | awk ' { print $3 } '`

ROOTT=`expr $ROOTT "*" 1000`
ROOTU=`expr $ROOTU "*" 1000`
DATAT=`expr $DATAT "*" 1000`
DATAU=`expr $DATAU "*" 1000`
DUNGEONST=`expr $DUNGEONST "*" 1000`
DUNGEONSU=`expr $DUNGEONSU "*" 1000`
VMWARET=`expr $VMWARET "*" 1000`
VMWAREU=`expr $VMWAREU "*" 1000`
XENT=`expr $XENT "*" 1000`
XENU=`expr $XENU "*" 1000`

/usr/bin/rrdtool update $DISCO N:$ROOTT:$ROOTU:$DATAT:$DATAU:$DUNGEONST:$DUNGEONSU:$VMWARET:$VMWAREU:$XENT:$XENU

###################################CPU######################################

USER0=`mpstat -P 0 1 5 | grep Media | awk '{ print $3 }'`
SYS0=`mpstat -P 0 1 5 | grep Media | awk '{ print $5 }'`
USER1=`mpstat -P 1 1 5 | grep Media | awk '{ print $3 }'`
SYS1=`mpstat -P 1 1 5 | grep Media | awk '{ print $5 }'`
USER2=`mpstat -P 2 1 5 | grep Media | awk '{ print $3 }'`
SYS2=`mpstat -P 2 1 5 | grep Media | awk '{ print $5 }'`
USER3=`mpstat -P 3 1 5 | grep Media | awk '{ print $3 }'`
SYS3=`mpstat -P 3 1 5 | grep Media | awk '{ print $5 }'`

USER0=`echo $USER0 | sed 's%,%.%'`
SYS0=`echo $SYS0 | sed 's%,%.%'`
USER1=`echo $USER1 | sed 's%,%.%'`
SYS1=`echo $SYS1 | sed 's%,%.%'`
USER2=`echo $USER2 | sed 's%,%.%'`
SYS2=`echo $SYS2 | sed 's%,%.%'`
USER3=`echo $USER3 | sed 's%,%.%'`
SYS3=`echo $SYS3 | sed 's%,%.%'`  

echo $USER0
echo $SYS0
echo $USER1
echo $SYS1
echo $USER2
echo $SYS2
echo $USER3
echo $SYS3  

/usr/bin/rrdtool update $CPU N:$USER0:$SYS0:$USER1:$SYS1:$USER2:$SYS2:$USER3:$SYS3 

##############################PROCESOS###################################  

PROC=`ps -ef | wc -l` 
PROC=`expr $PROC "-" 3`
/usr/bin/rrdtool update $PROCESOS N:$PROC

##############################RED##########################################

IN=`snmpwalk -v 1 -c com localhost ifInOctets.3 | awk '{ print $4 }'`
OUT=`snmpwalk -v 1 -c com localhost ifOutOctets.3 | awk '{ print $4 }'`

/usr/bin/rrdtool update $RED N:$IN:$OUT

Script que pinta el gráfico.

#!/bin/bash

#BBDD
MEMORIA=/data/rrdtool/memoria.rrd
DISCO=/data/rrdtool/hd.rrd
CPU=/data/rrdtool/cpu.rrd
PROCESOS=/data/rrdtool/proc.rrd
RED=/data/rrdtool/red.rrd

#FICHEROS PNG
IMEMORIA[0]=/data/www/rrdtool/mem/dmem.png
IMEMORIA[1]=/data/www/rrdtool/mem/smem.png
IMEMORIA[2]=/data/www/rrdtool/mem/mmem.png
IMEMORIA[3]=/data/www/rrdtool/mem/amem.png

##FICHEROS PNG
IDISCO[0]=/data/www/rrdtool/hd/dhd.png
IDISCO[1]=/data/www/rrdtool/hd/shd.png
IDISCO[2]=/data/www/rrdtool/hd/mhd.png
IDISCO[3]=/data/www/rrdtool/hd/ahd.png 

##FICHEROS PNG
ICPU[0]=/data/www/rrdtool/cpu/dcpu.png
ICPU[1]=/data/www/rrdtool/cpu/scpu.png
ICPU[2]=/data/www/rrdtool/cpu/mcpu.png
ICPU[3]=/data/www/rrdtool/cpu/acpu.png 

##FICHEROS PNG
IPROC[0]=/data/www/rrdtool/proc/dproc.png
IPROC[1]=/data/www/rrdtool/proc/sproc.png
IPROC[2]=/data/www/rrdtool/proc/mproc.png
IPROC[3]=/data/www/rrdtool/proc/aproc.png

##FICHEROS PNG
IRED[0]=/data/www/rrdtool/red/dred.png
IRED[1]=/data/www/rrdtool/red/sred.png
IRED[2]=/data/www/rrdtool/red/mred.png
IRED[3]=/data/www/rrdtool/red/ared.png

####DiaSemanaMesAño
FECHAS[0]=-1day
FECHAS[1]=-604800
FECHAS[2]=-2678400
FECHAS[3]=-31622400

##VARIOS
LANG=en_EN

sleep 10
################################FUNCIONES GRAFICAS##########################################
############################################################################################
creamemoria() { 

last=`rrdtool last $MEMORIA`
width=800
height=250
i=0

for temp in ${FECHAS[@]}
do
       /usr/bin/rrdtool graph ${IMEMORIA[$i]} --imgformat PNG --start $temp --end $last \
       --width $width --height $height  \
       --alt-autoscale-max \
       --lower-limit=0 \
       --vertical-label="MEMORIA RAM" \
       --base=1024 \
       DEF:memt=$MEMORIA:memt:AVERAGE \
       DEF:memu=$MEMORIA:memu:AVERAGE \
       DEF:memc=$MEMORIA:memc:AVERAGE \
       DEF:memf=$MEMORIA:memf:AVERAGE \
       DEF:swap=$MEMORIA:swap:AVERAGE \
       AREA:memt#CD5C27:"Memoria Total      "  \
       GPRINT:memt:MIN:"Minimo\:%8.2lf %s"  \
       GPRINT:memt:MAX:"Maximo\:%8.2lf %s"  \
       GPRINT:memt:LAST:"Ultimo\:%8.2lf %s\n" \
       AREA:memu#E0E02D:"Memoria Used       " \
       GPRINT:memu:MIN:"Minimo\:%8.2lf %s"  \
       GPRINT:memu:MAX:"Maximo\:%8.2lf %s"  \
       GPRINT:memu:LAST:"Ultimo\:%8.2lf %s\n"  \
       AREA:memc#2289B6:"Memoria Cached     " \
       GPRINT:memc:MIN:"Minimo\:%8.2lf %s"  \
       GPRINT:memc:MAX:"Maximo\:%8.2lf %s"  \
       GPRINT:memc:LAST:"Ultimo\:%8.2lf %s\n" \
       AREA:memf#24C226:"Memoria Free       " \
       GPRINT:memf:MIN:"Minimo\:%8.2lf %s"  \
       GPRINT:memf:MAX:"Maximo\:%8.2lf %s"  \
       GPRINT:memf:LAST:"Ultimo\:%8.2lf %s\n" \
       LINE2:swap#000000:"Memoria Swap en uso" \
       GPRINT:swap:MIN:"Minimo\:%8.2lf %s" \
       GPRINT:swap:MAX:"Maximo\:%8.2lf %s"  \
       GPRINT:swap:LAST:"Ultimo\:%8.2lf %s"
i=`expr $i "+" 1`
done
}



creadisco() {

last=`rrdtool last $DISCO`
fecha=`date +"%c %Z"`
width=800
height=250
i=0

for temp in ${FECHAS[@]}
do
       /usr/bin/rrdtool graph ${IDISCO[$i]} --imgformat PNG --start $temp --end $last \
       --width $width --height $height  \
       --alt-autoscale-max \
       --lower-limit=0 \
       --vertical-label="Particiones" \
       --base=1000 \
       DEF:roott=$DISCO:roott:AVERAGE \
       DEF:rootu=$DISCO:rootu:AVERAGE \
       DEF:datat=$DISCO:datat:AVERAGE \
       DEF:datau=$DISCO:datau:AVERAGE \
       DEF:dungeonst=$DISCO:dungeonst:AVERAGE \
       DEF:dungeonsu=$DISCO:dungeonsu:AVERAGE \
       DEF:vmwaret=$DISCO:vmwaret:AVERAGE \
       DEF:vmwareu=$DISCO:vmwareu:AVERAGE \
       DEF:xent=$DISCO:xent:AVERAGE \
       DEF:xenu=$DISCO:xenu:AVERAGE \
       LINE2:roott#9A0000:"Disco en /          "\
       GPRINT:roott:MAX:"Maximo\:%4.2lf %s\n"\
       LINE1:rootu#FF0000:"Disco used /        "\
       GPRINT:rootu:LAST:"Ultimo\:%4.2lf %s\n"\
       LINE2:datat#949C00:"Disco en /data      "\
       GPRINT:datat:MAX:"Maximo\:%4.2lf %s\n"\
       LINE1:datau#EBF700:"Disco used /data    "\
       GPRINT:datau:LAST:"Ultimo\:%4.2lf %s\n"\
       LINE2:dungeonst#0D9E00:"Disco en /dungeons  "\
       GPRINT:dungeonst:MAX:"Maximo\:%4.2lf %s\n"\
       LINE1:dungeonsu#15FF00:"Disco used /dungeons"\
       GPRINT:dungeonsu:LAST:"Ultimo\:%4.2lf %s\n"\
       LINE2:vmwaret#1800B6:"Disco en /vmware    "\
       GPRINT:vmwaret:MAX:"Maximo\:%4.2lf %s\n"  \
       LINE1:vmwareu#00B3FF:"Disco used /vmware  "\
       GPRINT:vmwareu:LAST:"Ultimo\:%4.2lf %s\n" \
       LINE2:xent#740086:"Disco en /xen       "\
       GPRINT:xent:MAX:"Maximo\:%4.2lf %s\n"\
       LINE1:xenu#DD00FF:"Disco used /xen     "\
       GPRINT:xenu:LAST:"Ultimo\:%4.2lf %s"\

i=`expr $i "+" 1`
done
}

creacpu() { 

last=`rrdtool last $CPU`
fecha=`date +"%c %Z"`
width=800
height=250
i=0   

for temp in ${FECHAS[@]}
do

       /usr/bin/rrdtool graph ${ICPU[$i]} --imgformat PNG --start $temp --end $last \
       --width $width --height $height  \
       --alt-autoscale-max \
       --lower-limit=0 \
       --vertical-label="Carga en %" \
       DEF:usercpu0=$CPU:user0:AVERAGE \
       DEF:syscpu0=$CPU:sys0:AVERAGE \
       DEF:usercpu1=$CPU:user1:AVERAGE \
       DEF:syscpu1=$CPU:sys1:AVERAGE \
       DEF:usercpu2=$CPU:user2:AVERAGE \
       DEF:syscpu2=$CPU:sys2:AVERAGE \
       DEF:usercpu3=$CPU:user3:AVERAGE \
       DEF:syscpu3=$CPU:sys3:AVERAGE \
       LINE1:usercpu0#9A0000:"Carga cpu0 user  "  \
       GPRINT:usercpu0:MIN:"Minimo\:%3.2lf   "  \
       GPRINT:usercpu0:MAX:"Maximo\:%3.2lf   "  \
       GPRINT:usercpu0:LAST:"Ultimo\:%3.2lf   " \
       GPRINT:usercpu0:AVERAGE:"Media\:%3.2lf   \n" \
       LINE1:syscpu0#FF0000:"Carga cpu0 Sys   " \
       GPRINT:syscpu0:MIN:"Minimo\:%3.2lf   "  \
       GPRINT:syscpu0:MAX:"Maximo\:%3.2lf   "  \
       GPRINT:syscpu0:LAST:"Ultimo\:%3.2lf   " \
       GPRINT:syscpu0:AVERAGE:"Media\:%3.2lf   \n"\
       LINE1:usercpu1#949C00:"Carga cpu1 user  "  \
       GPRINT:usercpu1:MIN:"Minimo\:%3.2lf   "  \
       GPRINT:usercpu1:MAX:"Maximo\:%3.2lf   "  \
       GPRINT:usercpu1:LAST:"Ultimo\:%3.2lf   " \
       GPRINT:usercpu1:AVERAGE:"Media\:%3.2lf   \n" \
       LINE1:syscpu1#EBF700:"Carga cpu1 Sys   " \
       GPRINT:syscpu1:MIN:"Minimo\:%3.2lf   "  \
       GPRINT:syscpu1:MAX:"Maximo\:%3.2lf   "  \
       GPRINT:syscpu1:LAST:"Ultimo\:%3.2lf   " \
       GPRINT:syscpu1:AVERAGE:"Media\:%3.2lf   \n"\
       LINE1:usercpu2#0D9E00:"Carga cpu2 user  "  \
       GPRINT:usercpu2:MIN:"Minimo\:%3.2lf   "  \
       GPRINT:usercpu2:MAX:"Maximo\:%3.2lf   "  \
       GPRINT:usercpu2:LAST:"Ultimo\:%3.2lf   " \
       GPRINT:usercpu2:AVERAGE:"Media\:%3.2lf  \n" \
       LINE1:syscpu2#15FF00:"Carga cpu2 Sys   " \
       GPRINT:syscpu2:MIN:"Minimo\:%3.2lf   " \
       GPRINT:syscpu2:MAX:"Maximo\:%3.2lf   "  \
       GPRINT:syscpu2:LAST:"Ultimo\:%3.2lf   " \
       GPRINT:syscpu2:AVERAGE:"Media\:%3.2lf   \n"\
       LINE1:usercpu3#1800B6:"Carga cpu3 user  "  \
       GPRINT:usercpu3:MIN:"Minimo\:%3.2lf   "  \
       GPRINT:usercpu3:MAX:"Maximo\:%3.2lf   "  \
       GPRINT:usercpu3:LAST:"Ultimo\:%3.2lf   " \
       GPRINT:usercpu3:AVERAGE:"Media\:%3.2lf  \n" \
       LINE1:syscpu3#00B3FF:"Carga cpu3 Sys   " \
       GPRINT:syscpu3:MIN:"Minimo\:%3.2lf   "  \
       GPRINT:syscpu3:MAX:"Maximo\:%3.2lf  "  \
       GPRINT:syscpu3:LAST:"Ultimo\:%3.2lf   " \
       GPRINT:syscpu3:AVERAGE:"Media\:%3.2lf  "
i=`expr $i "+" 1`
done
}

creaproc() { 

last=`rrdtool last $PROCESOS`
width=800
height=250
i=0  

for temp in ${FECHAS[@]} 
do
       /usr/bin/rrdtool graph ${IPROC[$i]} --imgformat PNG --start $temp --end $last \
       --width $width --height $height  \
       --alt-autoscale-max \
       --lower-limit=0 \
       --vertical-label="Procesos" \
       DEF:proc=$PROCESOS:proc:AVERAGE \
       LINE2:proc#000000:"Numero de Procesos" \
       GPRINT:proc:MIN:"Minimo\:%5.0lf " \
       GPRINT:proc:MAX:"Maximo\:%5.0lf "  \
       GPRINT:proc:LAST:"Ultimo\:%5.0lf "

i=`expr $i "+" 1`
done
}

creared() {

last=`rrdtool last $RED`
width=800
height=250
i=0

for temp in ${FECHAS[@]}
do
       /usr/bin/rrdtool graph ${IRED[$i]} --imgformat PNG --start $temp --end $last \
       --width $width --height $height  \
       --alt-autoscale-max \
       --lower-limit=0 \
       --base=1000 \
       --vertical-label="Consumo Red Local" \
       DEF:IN=$RED:in:AVERAGE \
       DEF:OUT=$RED:out:AVERAGE \
       AREA:IN#07DE00:"Entrada" \
       GPRINT:IN:MIN:"Minimo\:%5.2lf %s" \
       GPRINT:IN:MAX:"Maximo\:%5.2lf %s"  \
       GPRINT:IN:LAST:"Ultimo\:%5.2lf %s\n" \
       LINE2:OUT#032BDE:"Salida" \
       GPRINT:OUT:MIN:"Minimo\:%5.2lf %s" \
       GPRINT:OUT:MAX:"Maximo\:%5.2lf %s"  \
       GPRINT:OUT:LAST:"Ultimo\:%5.2lf %s"

i=`expr $i "+" 1`
done
}

#######################################FIN##########################################################
####################################################################################################

creamemoria
creadisco
creacpu
creaproc
creared
Herramientas personales