#!/bin/ash

#upload log to ftp server

#

##

mkdir -p /mnt/usb/logs/backup

DIR="/mnt/usb/logs/backup"

SN=`hostname`

DATA1=`date +%Y%m%d`

##

touch /mnt/usb/logs/ftp_upload.log  /mnt/usb/logs/ftp_num

NUM=`cat /mnt/usb/logs/ftp_num`

if [ $NUM -ne 0 ]

then

NUM=$(($NUM-1))

fi

DATA=$DATA1-$NUM


#rotate log

rotate_log()

{

if [ ! -f access.log-$DATA1 ]

then

/etc/init.d/lighttpd stop

mv ../access.log access.log-$DATA1

touch ../access.log

/etc/init.d/lighttpd start

#/usr/sbin/logrotate -f /etc/logrotate.conf

fi

}

#tar log

tar_log(){

if [ -f access.log-$DATA1 ]

then

 if [ ! -f $SN-$DATA.log.gz ]

 then

 mv access.log-$DATA1 $SN-$DATA.log

 tar -czf $SN-$DATA.log.gz  $SN-$DATA.log

 fi

fi

}

##upload log

upload_log(){

if  [  -f $SN-$DATA.log.gz ]

then

lftp 10.8.0.1 -u huahuabox,bblK.eQu -e "mkdir $SN;cd $SN;put $SN-$DATA.log.gz;bye"

 if [ $? -eq 0  ]

 then

 echo $SN-$DATA.log.gz > /mnt/usb/logs/ftp_upload.log

 mv $SN-$DATA.log.gz $SN-$DATA.log.gz.old

 if [ $NUM -gt 100  ]

 then

 echo 0 > /mnt/usb/logs/ftp_num

 else

 NUM=$(($NUM+1))

 echo $NUM > /mnt/usb/logs/ftp_num

 fi

 fi

fi

}

##do it

if ping -c 2 8.8.8.8

then

if [ -f /usr/bin/lftp  ]  

then

 cd $DIR

 grep $SN-$DATA.log.gz /mnt/usb/logs/ftp_upload.log

 if [ ! $? -eq 0 ]

 then

 rotate_log

 tar_log

 upload_log

 rm $SN-$DATA.log.gz.old

 fi

fi

fi