91 lines
3.3 KiB
Bash
91 lines
3.3 KiB
Bash
#!/bin/bash
|
|||
|
|
|
||
|
|
# this script is started:
|
||
|
|
# - manual, from the monitor folder
|
||
|
|
# - cronwise, from the project-HOME folder
|
||
|
|
# usage:
|
||
|
|
# ./createGraphs 1d # or 1h or 2w or 1y
|
||
|
|
cd monitor >/dev/null 2>&1 # this only works if we are in the HOME folder, else its ignored with an error
|
||
|
|
|
||
|
|
# the output of this script can only be visualized under a webserver
|
||
|
|
FOLDER='/var/www/suy.nl/m'
|
||
|
|
|
||
|
|
function graph {
|
||
|
|
P=${1}
|
||
|
|
mkdir -p ${FOLDER}/${P}
|
||
|
|
rrdtool graph ${FOLDER}/${P}/disk.png \
|
||
|
|
--imgformat PNG \
|
||
|
|
--width 640 \
|
||
|
|
--height 240 \
|
||
|
|
--upper-limit 100 \
|
||
|
|
--lower-limit 0 \
|
||
|
|
--start -${P} \
|
||
|
|
--watermark "$(date)" \
|
||
|
|
--vertical-label 'Percentage' \
|
||
|
|
--title 'Usage last '${P} \
|
||
|
|
'DEF:root=disk.rrd:root:AVERAGE' \
|
||
|
|
'DEF:memt=mem.rrd:total:AVERAGE' \
|
||
|
|
'DEF:memu=mem.rrd:used:AVERAGE' \
|
||
|
|
'CDEF:memp=memu,memt,/' \
|
||
|
|
'CDEF:memq=memp,100,*' \
|
||
|
|
'AREA:root#0000FF:"disk /"' \
|
||
|
|
'LINE2:memq#00FF00:"Memory"'
|
||
|
|
|
||
|
|
rrdtool graph ${FOLDER}/${P}/load.png \
|
||
|
|
--imgformat PNG \
|
||
|
|
--width 640 \
|
||
|
|
--height 240 \
|
||
|
|
--upper-limit 1 \
|
||
|
|
--lower-limit 0 \
|
||
|
|
--start -${P} \
|
||
|
|
--watermark "$(date)" \
|
||
|
|
--title 'processor load in '${P} \
|
||
|
|
--vertical-label 'Processors used' \
|
||
|
|
'DEF:min1=load.rrd:min1:AVERAGE' \
|
||
|
|
'DEF:min5=load.rrd:min5:AVERAGE' \
|
||
|
|
'DEF:min15=load.rrd:min15:AVERAGE' \
|
||
|
|
'AREA:min1#FF0000:"1 minute"' \
|
||
|
|
'AREA:min5#FFA500:"5 minutes"' \
|
||
|
|
'LINE1:min5#FF0000:' \
|
||
|
|
'AREA:min15#FFD801:"15 minutes"' \
|
||
|
|
'LINE1:min15#FFA500:'
|
||
|
|
|
||
|
|
rrdtool graph ${FOLDER}/${P}/cpu.png \
|
||
|
|
--imgformat PNG \
|
||
|
|
--width 640 \
|
||
|
|
--height 240 \
|
||
|
|
--upper-limit 10 \
|
||
|
|
--lower-limit 0 \
|
||
|
|
--start -${P} \
|
||
|
|
--watermark "$(date)" \
|
||
|
|
--vertical-label 'Percentage' \
|
||
|
|
--title 'CPU usage in '${P} \
|
||
|
|
'DEF:us=cpu.rrd:us:AVERAGE' \
|
||
|
|
'DEF:sy=cpu.rrd:sy:AVERAGE' \
|
||
|
|
'DEF:ni=cpu.rrd:ni:AVERAGE' \
|
||
|
|
'AREA:sy#00FF00:"sy"' \
|
||
|
|
'STACK:us#0000FF:"us"' \
|
||
|
|
'STACK:ni#FF0000:"ni"'
|
||
|
|
|
||
|
|
rrdtool graph ${FOLDER}/${P}/network.png \
|
||
|
|
--imgformat PNG \
|
||
|
|
--width 640 \
|
||
|
|
--height 240 \
|
||
|
|
--start -${P} \
|
||
|
|
--watermark "$(date)" \
|
||
|
|
--vertical-label 'Bytes' \
|
||
|
|
--upper-limit 10000 \
|
||
|
|
--lower-limit 0 \
|
||
|
|
--title 'Network last '${P} \
|
||
|
|
--lower-limit 0 \
|
||
|
|
'DEF:in=network.rrd:in:AVERAGE' \
|
||
|
|
'DEF:out=network.rrd:out:AVERAGE' \
|
||
|
|
'AREA:out#00FF00:"out"' \
|
||
|
|
'LINE2:in#0000FF:"in"'
|
||
|
|
}
|
||
|
|
|
||
|
|
for var in "$@"
|
||
|
|
do
|
||
|
|
graph "$var"
|
||
|
|
done
|