############################################################ # pu_rpt - calculates number of Unique Portal users for # every hour with daily totals # # J. David Schronce - Tue Jan 15 10:58:01 CST 2008 ############################################################ # # An attempt is made here to standardize the web server # log directories. On my servers they have a consistant # beginning, which I call LOGDIR, followed by the Environment # name, and ending with "access.log" - which I call # LOGEXT. Hopefully you can find similarities for your # log files. # ############################################################ LOGDIR=/apps/ihs/*/logs LOGEXT=access.log LAENV=lawprd2 DATE=`date +%d/%b/%Y` echo " Time , Unique, Transactions" echo "------------- , ------, ------------" for x in 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 do case $x in ?) x="0$x";; esac echo "$x:00 - $x:59 , \c" grep "$DATE:$x:" $LOGDIR/$LAENV.$LOGEXT \ | awk '{print $1}' \ | sort -u > /tmp/pu_hr.$$ echo "`cat /tmp/pu_hr.$$ | grep -v ^$ | sort -u | wc -l` , \c" grep "$DATE:$x:" $LOGDIR/$LAENV.$LOGEXT | grep servlet | wc -l done echo "------------- , ------, ------------" echo "Daily Totals , \c" grep "$DATE:" $LOGDIR/$LAENV.$LOGEXT \ | awk '{print $1}' \ | sort -u > /tmp/pu_day.$$ echo "`cat /tmp/pu_day.$$ | grep -v ^$ | sort -u | wc -l` , \c" grep "$DATE:" $LOGDIR/$LAENV.$LOGEXT | grep servlet | wc -l rm /tmp/pu_hr.$$ rm /tmp/pu_day.$$