rendered paste body#!/usr/local/bin/bash
#
# a script to tail /var/log/dansguardian
# table manners included
#
# 2007.3.14 DSkinner : file init
#
sleep 60
echo '' > /var/log/danlogtosql
LINE=`wc -l /var/log/dansguardian.log | awk '{print $1}'`
while [ 0 -ne 1 ];do
sleep 1
CHECKLINE=`wc -l /var/log/dansguardian.log | awk '{print $1}'`
echo $CHECKLINE and $LINE comp >> /var/log/danlogtosql
if [ $CHECKLINE -ne $LINE ]; then
DIFF=`echo $CHECKLINE-$LINE | bc`
while [ $DIFF -ne 0 ];do
DIFF=`echo $DIFF-1 | bc`
LINETOGET=`echo $CHECKLINE-$DIFF | bc`
echo getting line $LINETOGET >> /var/log/danlogtosql
VALPARSE=`sed -n ${LINETOGET}p /var/log/dansguardian.log`
echo $VALPARSE >> /var/log/danlogtosql
echo \
USE GUARDIAN\;\
SET @DL_DATETIME=\'`echo $VALPARSE | awk '{print $1, $2}'`\'\;\
SET @DL_USER=\'`echo $VALPARSE | awk '{print $3}'`\'\;\
SET @DL_IP=\'`echo $VALPARSE | awk '{print $4}'`\'\;\
SET @DL_URL=\'`echo $VALPARSE | awk '{print $5}'`\'\;\
SET @DL_METHOD=\'`echo $VALPARSE | awk '{print $6}'`\'\;\
SET @DL_SIZE=\'`echo $VALPARSE | awk '{print $7}'`\'\;\
SELECT danlog_stmt\(@DL_DATETIME, @DL_USER, @DL_IP, @DL_URL, @DL_METHOD, \'\', @DL_SIZE\)\; | mysql > /dev/null
done
fi
LINE=$CHECKLINE
done