From: root [root@ahk] Sent: Wednesday, November 13, 2002 7:09 AM To: Kaplan, Andrew H. #!/bin/bash NAGIOSDIR=/usr/local/nagios CFGFILE=apan/apan.cfg RRDTOOL=/usr/local/rrdtool/bin/rrdtool COLS=("#ff0000" "#00ff00" "#0000ff" "#ff8080" "#80ff80" "#8080ff" ) echo "Content-type: image/png" echo "" HOST=`echo $QUERY_STRING|cut -d "&" -f 1` CHECK=`echo $QUERY_STRING|cut -d "&" -f 2` TIME=`echo $QUERY_STRING|cut -d "&" -f 3` STEP=`echo $QUERY_STRING|cut -d "&" -f 4` #HOST=sdl-file-001 #CHECK=nt-disk #TIME=12345 #STEP=1 CONF=`grep "${HOST};${CHECK}" /$NAGIOSDIR/$CFGFILE` #echo $CONF >> /tmp/perfdata RDDFILE=`echo $CONF|cut -d ";" -f 3` UNIT=`echo $CONF|cut -d ";" -f 7` data=`echo $CONF|cut -d ";" -f 5` EXTRA=`echo $CONF|cut -d ";" -f 8` #DRAWTYPE=`echo $CONF|cut -d ";" if [ "$STEP" != "" ]; then M=0 N=0 IN=$data #EXTRA="-l 0 -b 1024" #echo "Step: $STEP" >> /tmp/perfdata2 #echo "IN: $IN" >> /tmp/perfdata2 STR="" for X in $IN; do Y=`echo $X|cut -d ":" -f 2` if [ "$Y" = "AREA" ]; then if [ $N = 0 ]; then N=`echo $N+1|bc` else N=`echo $N+1|bc` M=`echo $N-2|bc` # echo $STR,$N,$M UT[$M]=$STR STR="" fi fi STR="$STR $X" done M=`echo $N-1|bc` #echo $STR,$N,$M UT[$M]=$STR #echo "Antal: ${#UT[*]}" >> /tmp/perfdata2 #echo "Ex: ${UT[$STEP]}" >> /tmp/perfdata2 data=${UT[$STEP]} fi #echo $data >> /tmp/perfdata2 N=0 ARG="" for entry in $data; do #echo "Entry: $entry" >> /tmp/perfdata2 COL=${COLS[$N]} tentry=`echo $entry|cut -d ":" -f 1|tr "/" "-"` TYPE=`echo $entry|cut -d ":" -f 2` ARG="$ARG DEF:var$N=$RDDFILE:$tentry:AVERAGE $TYPE:var${N}$COL:$tentry:" N=`echo "$N+1"|bc` done #echo $ARG #exit #echo $TIME #/usr/local/bin/rrdtool graph - -s -$TIME -a PNG -B /tmp/back.gd $ARG $RRDTOOL graph - -s -$TIME -a PNG -v $UNIT $EXTRA $ARG echo "$RRDTOOL graph - -s -$TIME -a PNG -v $UNIT $EXTRA $ARG" >> /tmp/perfdata2