#!/bin/bash -x
RRD_FILE=mod_status.rrd
if [ "$1" ]; then
RRD_FILE=$1
fi
MAX_CLIENTS=""
if [ "$2" ]; then
MAX_CLIENTS="CDEF:max_clients=$2,0,+ AREA:max_clients#BBFFFF:MaxClients"
fi
BASE_FILE=`basename $RRD_FILE`
NOW=`date +%s`
WIDTH=1000
HEIGHT=600
rrdtool graph \
"${BASE_FILE}-req-day.png" \
--start '-1d' \
--end $NOW \
--width $WIDTH \
--height $HEIGHT \
--lower-limit 0 \
DEF:total_accesses=$RRD_FILE:total_accesses:AVERAGE \
'LINE:total_accesses#FF0000:Total Accesses' \
DEF:requests=$RRD_FILE:current_requests:MAX \
'LINE:requests#A22222:Max Requests' \
rrdtool graph \
"${BASE_FILE}-workers-day.png" \
--start '-1d' \
--end $NOW \
--width $WIDTH \
--height $HEIGHT \
--lower-limit 0 \
DEF:waiting=$RRD_FILE:waiting:AVERAGE \
DEF:waiting_min=$RRD_FILE:waiting:MIN \
DEF:starting=$RRD_FILE:starting:AVERAGE \
DEF:reading=$RRD_FILE:reading:AVERAGE \
DEF:sending=$RRD_FILE:sending:AVERAGE \
DEF:keepalive=$RRD_FILE:keepalive:AVERAGE \
DEF:dns_lookup=$RRD_FILE:dns_lookup:AVERAGE \
DEF:closing=$RRD_FILE:closing:AVERAGE \
DEF:logging=$RRD_FILE:logging:AVERAGE \
DEF:finishing=$RRD_FILE:finishing:AVERAGE \
DEF:idle_cleanup=$RRD_FILE:idle_cleanup:AVERAGE \
DEF:requests=$RRD_FILE:current_requests:AVERAGE \
DEF:open_slot=$RRD_FILE:open_slot:AVERAGE \
DEF:max_clients=$RRD_FILE:max_clients:AVERAGE \
\
DEF:current_requests=$RRD_FILE:current_requests:AVERAGE \
DEF:current_requests_max=$RRD_FILE:current_requests:MAX \
\
$MAX_CLIENTS \
\
'AREA:max_clients#FFFFAA:Max clients' \
'AREA:waiting#FFd2aa:Waiting' \
'AREA:waiting_min#fee3cc:Min Waiting' \
'AREA:current_requests_max#D8DFFF:Max occupied' \
'AREA:current_requests#AABBFF:Occupied' \
'LINE2:reading#22A222:Reading' \
'LINE2:sending#2222A2:Sending' \
'LINE1:keepalive#50eae8:Keep-Alive' \
'LINE:starting#02F222:Starting' \
'LINE:dns_lookup#225222:DNS Lookup' \
'LINE:closing#222252:Closing' \
'LINE:logging#022222:Logging' \
'LINE:finishing#220222:Gracefully Finishing' \
'LINE:idle_cleanup#222202:Idle Cleanup' \