#!/bin/sh RRD_BIN=/usr/bin RRDPAGE=/var/www/time.mattrude.com/rrd SCRIPTS=/var/www/time.mattrude.com/scripts STATUS=/var/www/time.mattrude.com/status #rsync -a ${RRDPAGE}/twyla.mattrude.com-clients.rrd twyla:${RRDPAGE}/twyla-client.rrd #rsync -a ${RRDPAGE}/samantha.mattrude.com-clients.rrd samantha:${RRDPAGE}/samantha-client.rrd ${RRD_BIN}/rrdupdate ${RRDPAGE}/kirby.mattrude.com-clients.rrd N:`${SCRIPTS}/do-ntp-client-update` rsync -a twyla:${RRDPAGE}/twyla-client.rrd ${RRDPAGE}/twyla.mattrude.com-clients.rrd rsync -a samantha:${RRDPAGE}/samantha-client.rrd ${RRDPAGE}/samantha.mattrude.com-clients.rrd sleep 1 cd ${RRDPAGE} if [ ! $? ]; then exit 1; fi for X in `cat list-of-systems` do sh ${SCRIPTS}/do-ntp-rrdstats ${X} if [ ! $? ]; then exit 1; fi ${RRD_BIN}/rrdtool graph --imgformat=PNG ${STATUS}/${X}/daily-ntp-clients-small.png \ --width=296 --height=111 --start=-86400 --end=-300 --lower-limit=0 -r \ --title="${X}" \ --vertical-label='Active Clients' \ DEF:a="${RRDPAGE}/${X}-clients.rrd":clients:LAST \ AREA:a#002A97FF:"" \ GPRINT:a:LAST:"Now\:%8.2lf %s" \ GPRINT:a:AVERAGE:"Avg\:%8.2lf %s" \ GPRINT:a:MAX:"Max\:%8.2lf %s\n" > /dev/null ${RRD_BIN}/rrdtool graph --imgformat PNG ${STATUS}/${X}/daily-ntp-clients.png \ --width=650 --height=200 --start=-86400 --end=-300 \ --title="${X} - Number of Active Clients" \ --vertical-label='Number of Clients' \ DEF:a="${RRDPAGE}/${X}-clients.rrd":clients:LAST \ DEF:b="${RRDPAGE}/${X}-clients.rrd":abusive:LAST \ AREA:a#002A97FF:"Clients:" \ GPRINT:a:LAST:"Current\:%8.2lf %s" \ GPRINT:a:AVERAGE:"Average\:%8.2lf %s" \ GPRINT:a:MIN:"Minimum\:%8.2lf %s" \ GPRINT:a:MAX:"Maximum\:%8.2lf %s\n" \ AREA:b#F51D30FF:"Abusive:" \ GPRINT:b:LAST:" Current\:%8.2lf %s" \ GPRINT:b:AVERAGE:"Average\:%8.2lf %s" \ GPRINT:b:MIN:"Minimum\:%8.2lf %s" \ GPRINT:b:MAX:"Maximum\:%8.2lf %s\n" > /dev/null ${RRD_BIN}/rrdtool graph --imgformat PNG ${STATUS}/${X}/weekly-ntp-clients.png \ --width=650 --height=200 --start=-691200 --end=-300 \ --title="${X} - Number of Active Clients" \ --vertical-label='Number of Clients' \ DEF:a="${RRDPAGE}/${X}-clients.rrd":clients:LAST \ DEF:b="${RRDPAGE}/${X}-clients.rrd":abusive:LAST \ AREA:a#002A97FF:"Clients:" \ GPRINT:a:LAST:"Current\:%8.2lf %s" \ GPRINT:a:AVERAGE:"Average\:%8.2lf %s" \ GPRINT:a:MIN:"Minimum\:%8.2lf %s" \ GPRINT:a:MAX:"Maximum\:%8.2lf %s\n" \ AREA:b#F51D30FF:"Abusive:" \ GPRINT:b:LAST:" Current\:%8.2lf %s" \ GPRINT:b:AVERAGE:"Average\:%8.2lf %s" \ GPRINT:b:MIN:"Minimum\:%8.2lf %s" \ GPRINT:b:MAX:"Maximum\:%8.2lf %s\n" > /dev/null ${RRD_BIN}/rrdtool graph --imgformat PNG ${STATUS}/${X}/monthly-ntp-clients.png \ --width=650 --height=200 --start=-2629744 --end=-300 \ --title="${X} - Number of Active Clients" \ --vertical-label='Number of Clients' \ DEF:a="${RRDPAGE}/${X}-clients.rrd":clients:LAST \ DEF:b="${RRDPAGE}/${X}-clients.rrd":abusive:LAST \ AREA:a#002A97FF:"Clients:" \ GPRINT:a:LAST:"Current\:%8.2lf %s" \ GPRINT:a:AVERAGE:"Average\:%8.2lf %s" \ GPRINT:a:MIN:"Minimum\:%8.2lf %s" \ GPRINT:a:MAX:"Maximum\:%8.2lf %s\n" \ AREA:b#F51D30FF:"Abusive:" \ GPRINT:b:LAST:" Current\:%8.2lf %s" \ GPRINT:b:AVERAGE:"Average\:%8.2lf %s" \ GPRINT:b:MIN:"Minimum\:%8.2lf %s" \ GPRINT:b:MAX:"Maximum\:%8.2lf %s\n" > /dev/null ${RRD_BIN}/rrdtool graph --imgformat PNG ${STATUS}/${X}/yearly-ntp-clients.png \ --width=650 --height=200 --start=-31556926 --end=-300 \ --title="${X} - Number of Active Clients" \ --vertical-label='Number of Clients' \ DEF:a="${RRDPAGE}/${X}-clients.rrd":clients:LAST \ DEF:b="${RRDPAGE}/${X}-clients.rrd":abusive:LAST \ AREA:a#002A97FF:"Clients:" \ GPRINT:a:LAST:"Current\:%8.2lf %s" \ GPRINT:a:AVERAGE:"Average\:%8.2lf %s" \ GPRINT:a:MIN:"Minimum\:%8.2lf %s" \ GPRINT:a:MAX:"Maximum\:%8.2lf %s\n" \ AREA:b#F51D30FF:"Abusive:" \ GPRINT:b:LAST:" Current\:%8.2lf %s" \ GPRINT:b:AVERAGE:"Average\:%8.2lf %s" \ GPRINT:b:MIN:"Minimum\:%8.2lf %s" \ GPRINT:b:MAX:"Maximum\:%8.2lf %s\n" > /dev/null for a in offset sjit cjit wander freq disp jitter do ${RRD_BIN}/rrdtool graph --imgformat PNG ${STATUS}/${X}/daily-ntp-${a}.png \ --width 650 --height 200 --start -86400 --end=-300 \ --title "${X} - ${a} - Daily - `date`" \ --vertical-label "${X}" \ DEF:a="${RRDPAGE}/${X}.rrd":${a}:LAST \ AREA:a#002A97FF:"${a}:" \ GPRINT:a:LAST:" Current\:%8.2lf %s" \ GPRINT:a:AVERAGE:"Average\:%8.2lf %s" \ GPRINT:a:MIN:"Minimum\:%8.2lf %s" \ GPRINT:a:MAX:"Maximum\:%8.2lf %s\n" > /dev/null ${RRD_BIN}/rrdtool graph --imgformat PNG ${STATUS}/${X}/weekly-ntp-${a}.png \ --width 650 --height 200 --start -691200 --end=-300 \ --title "`TZ=UTC date`" \ --vertical-label "${X}" \ DEF:${a}=${RRDPAGE}/${X}.rrd:${a}:LAST \ CDEF:n${a}=${a},1000,/ \ AREA:n${a}#002A97FF:"${a}:" \ GPRINT:n${a}:LAST:"Current\:%le" \ GPRINT:n${a}:AVERAGE:"Average\:%8.2lf %s" \ GPRINT:n${a}:MIN:"Minimum\:%8.2lf %s" \ GPRINT:n${a}:MAX:"Maximum\:%8.2lf %s\n" > /dev/null ${RRD_BIN}/rrdtool graph --imgformat PNG ${STATUS}/${X}/monthly-ntp-${a}.png \ --width 650 --height 200 --start -2629744 --end=-300 \ --title "`TZ=UTC date`" \ --vertical-label "${X}" \ DEF:${a}=${RRDPAGE}/${X}.rrd:${a}:LAST \ CDEF:n${a}=${a},1000,/ \ AREA:n${a}#002A97FF:"${a}:" \ GPRINT:n${a}:LAST:"Current\:%le" \ GPRINT:n${a}:AVERAGE:"Average\:%8.2lf %s" \ GPRINT:n${a}:MIN:"Minimum\:%8.2lf %s" \ GPRINT:n${a}:MAX:"Maximum\:%8.2lf %s\n" > /dev/null ${RRD_BIN}/rrdtool graph --imgformat PNG ${STATUS}/${X}/yearly-ntp-${a}.png \ --width 650 --height 200 --start -31556926 --end=-300 \ --title "`TZ=UTC date`" \ --vertical-label "${X}" \ DEF:${a}=${RRDPAGE}/${X}.rrd:${a}:LAST \ CDEF:n${a}=${a},1000,/ \ AREA:n${a}#002A97FF:"${a}:" \ GPRINT:n${a}:LAST:"Current\:%le" \ GPRINT:n${a}:AVERAGE:"Average\:%8.2lf %s" \ GPRINT:n${a}:MIN:"Minimum\:%8.2lf %s" \ GPRINT:n${a}:MAX:"Maximum\:%8.2lf %s\n" > /dev/null done done ${RRD_BIN}/rrdtool graph --imgformat=PNG ${STATUS}/all-clients.png \ --width=296 --height=83 --start=-86400 --end=-300 --lower-limit=0 -r \ --title='Active Clients on All Servers' \ --vertical-label='Active Clients' \ DEF:a="/var/www/time.mattrude.com/rrd/kirby.mattrude.com-clients.rrd":clients:AVERAGE \ DEF:b="/var/www/time.mattrude.com/rrd/twyla.mattrude.com-clients.rrd":clients:AVERAGE \ DEF:c="/var/www/time.mattrude.com/rrd/samantha.mattrude.com-clients.rrd":clients:AVERAGE \ LINE1:a#002A97FF:"Kirby:" \ GPRINT:a:LAST:"Now\:%6.2lf %s" \ GPRINT:a:AVERAGE:"Avg\:%6.2lf %s" \ GPRINT:a:MAX:"Max\:%6.2lf %s\n" \ LINE1:b#000000FF:"Twyla:" \ GPRINT:b:LAST:"Now\:%6.2lf %s" \ GPRINT:b:AVERAGE:"Avg\:%6.2lf %s" \ GPRINT:b:MAX:"Max\:%6.2lf %s\n" \ LINE1:c#990000FF:"Saman:" \ GPRINT:c:LAST:"Now\:%6.2lf %s" \ GPRINT:c:AVERAGE:"Avg\:%6.2lf %s" \ GPRINT:c:MAX:"Max\:%6.2lf %s\n" > /dev/null rm -f /var/www/time.mattrude.com/logs/ntp-stats-samantha.log /var/www/time.mattrude.com/logs/ntp-stats-twyla.log ssh samantha /home/matt/bin/ntp/ntp_clients_stats > /var/www/time.mattrude.com/logs/ntp-stats-samantha.log ssh twyla /home/matt/bin/ntp/ntp_clients_stats > /var/www/time.mattrude.com/logs/ntp-stats-twyla.log rsync -a ${STATUS} twyla:${STATUS}/ rsync -a ${STATUS} samantha:${STATUS}/