the script seems to work in as far as it proces the logs through awstats,
but, ocassionaly I get these errors:
---------
Update for config "/etc/awstats/awstats.www.domain.com.conf"
With data in log file "/home/domain.com/logs/2004-07-30-access.rog"
Phase 1 : First bypass old records, searching new record...
Direct access to last remembered record has fallen on another record.
So searching new records from beginning of log file...
Phase 2 : Now process new records (Flush history on disk after 20000 hosts)..
Jumped lines in file: 0
Parsed lines in file: 36
Found 0 dropped records,
Found 0 corrupted records,
Found 0 old records,
Found 36 new qualified records.
./awstatsproc: let: 08: value too great for base (error token is "08")
./awstatsproc: let: 09: value too great for base (error token is "09")
./awstatsproc: let: 08: value too great for base (error token is "08")
./awstatsproc: let: 08: value too great for base (error token is "08")
./awstatsproc: let: 09: value too great for base (error token is "09")
./awstatsproc: let: 09: value too great for base (error token is "09")
./awstatsproc: let: 08: value too great for base (error token is "08")
./awstatsproc: let: 09: value too great for base (error token is "09")
./awstatsproc: let: 08: value too great for base (error token is "08")
./awstatsproc: let: 09: value too great for base (error token is "09")
./awstatsproc: let: 08: value too great for base (error token is "08")
./awstatsproc: let: 09: value too great for base (error token is "09")
-------
any idea where am I going rwong ?
# cat awstatsproc | more
#Script Start
case $# in
1)
DOMAIN=$1
;;
*)
echo "Usage: $0 <domain.name>" 1>&2
echo "this re-processes all years' logs"
echo "logs expected as: 2004-MM-DD-access.rog"
exit
;;
esac
starttime=`date +%s`
#while true; do
for j in `seq -w 1 12`; do
for i in `seq -w 1 31`; do
if [ -s /home/$DOMAIN/logs/2004-$j-$i-access.rog ] ; then
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -config=www.$DOMAIN
-logfil
e=/home/$DOMAIN/logs/2004-$j-$i-access.rog -update
fi
let i=i+1
done
let j=j+1
done
#done
endtime=`date +%s`
exectime=$(($endtime - $starttime))
now=`date +"%Y-%m-%d %H:%M"`
echo "$now $0 executed on in $exectime sec" >> ./awstats.log
#/var/logs//usr/local/bin/awstatsproc.log
#Finished
--
Voytek
--
SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/
Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html