#!/bin/bash
export USER=smc
export PATH=/home/smc/bin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
export LD_LIBRARY_PATH=/home/smc/lib:/usr/local/lib
export OMNIORB_CONFIG=/home/smc/omniORB.cfg
export HOME=/home/smc
#
DATETIME=`date +%Y%m%d%H%M%S`
GWAVESDATADIR="/mnt/XDATA/GPSWaves"
GWAVESARCHIVE="GWAVES.tar.bz2"
RAWLOG="raw.log"
WAVESLOG="waves.log"
SPECTRUMLOG="spectrum.log"
TWAVESLOG="$DATETIME$WAVESLOG"
TSPECTRUMLOG="$DATETIME$SPECTRUMLOG"
TRAWLOG="$DATETIME$RAWLOG"
MAXUSAGE=10000000000
FILESREMOVED=0
#OLDESTARCHIVE=`ls -1tr "$GWAVESDATADIR/"*"$GWAVESARCHIVE" | head -1`
#
ServerExec GPSWaves "GWAVES --period 28"
sleep 5
#
echo `date` "GWAVESarchive: " "du befor archiving: " `sudo du -b -s /mnt/XDATA/` >> /home/smc/log/GPSWaves.log
#
for fileName in `ls -1tr "$GWAVESDATADIR/"*"$GWAVESARCHIVE"`
do
	if [ `sudo du -b -s /mnt/XDATA/ | (read a b; echo $a)` -gt "$MAXUSAGE" ]
	then
		echo `date` "GWAVESarchive: " "disk usage exceeded, removing oldest archive $fileName" >> /home/smc/log/GPSWaves.log
		( cd "$GWAVESDATADIR" ; sudo rm -f "$fileName" )
		((FILESREMOVED++))
	else
		break
	fi
done
#
if [ "$FILESREMOVED" -gt 0 ]
then
	echo `date` "GWAVESarchive: " "$FILESREMOVED files removed" >> /home/smc/log/GPSWaves.log
else
	echo `date` "GWAVESarchive: " "disk usage not exceeded, nothing removed" >> /home/smc/log/GPSWaves.log
fi
#
if [ -f "$GWAVESDATADIR/$RAWLOG" ]
then
	mv "$GWAVESDATADIR/$RAWLOG" "$GWAVESDATADIR/$TRAWLOG"
fi
#
if [ -f "$GWAVESDATADIR/$SPECTRUMLOG" ]
then
	mv "$GWAVESDATADIR/$SPECTRUMLOG" "$GWAVESDATADIR/$TSPECTRUMLOG"
fi
#
if [ -f "$GWAVESDATADIR/$WAVESLOG" ]
then
	mv "$GWAVESDATADIR/$WAVESLOG" "$GWAVESDATADIR/$TWAVESLOG"
fi
#
echo `date` "GWAVESarchive: " "stopping GWAVES for file archiving" >> /home/smc/log/GPSWaves.log
ServerExec GPSWaves "GWAVES --stop"
ServerExec GPSWaves "GWAVES --period 30"
#sleep 35
echo `date` "GWAVESarchive: " "starting GWAVES after file archiving" >> /home/smc/log/GPSWaves.log
ServerExec GPSWaves "GWAVES --start"
#
( cd "$GWAVESDATADIR" ; tar --remove-files -cvjf "$DATETIME$GWAVESARCHIVE" "$TRAWLOG" "$TWAVESLOG" "$TSPECTRUMLOG" ) >> /home/smc/log/GPSWaves.log
#
echo `date` "GWAVESarchive: " "du after archiving: " `sudo du -b -s /mnt/XDATA/` >> /home/smc/log/GPSWaves.log


