Function output

I am working on a script that will recycle processes in an application identified by entry ids. I am reading a file, and using the first field in the records in file to store the entry ids. The second field is a description. I have two records in this file to test my script.
My code to do this works! The problem is when I go to put it in a function, it again works, I just do not get the output to my shell session. Why is that?
How do I force the output to also echo to the shell session? It related to how I call the function? - Thanks ~SkyyBugg

If I comment out:
#doIt ()
#{
#}
#doit
I get the output!

I'd like to keep the function.

code:
cat /home/thomasm/cycler_printer_mt.ksh
#/usr/bin/ksh!
################################################
# Author: SKyyBugg
# Date 03-22-2007
# Purpose: to cycle servers
#
################################################
#
TODAY=`date +%m%d%y`
RTIME=`date +%c`
NODE_NAME=`hostname`
DOMAIN=build
UN=cycler
PW=allonsy
CYCLER=/cerner/w_standard/build_m04/aixrs6000/cycler
FILE_PATH=/unixadmin/bin
LOG=/unixadmin/log/${DOMAIN}.cycler.${TODAY}.log
IFS=":"
#
#
set -x
############
doIt ()
{

echo "Cycling servers for printers"
echo "In Domain: " ${DOMAIN}
echo ${CYCLER}
while read no descr
do
echo "Cycling Server: " ${no} ${descr}
${CYCLER} $no ${NODE_NAME} "-l" ${UN} ${DOMAIN} ${PW}
done< ${FILE_PATH}/.${NODE_NAME}.${DOMAIN}.cyc.pri.ser.lst >>$LOG
}
########
#MAIN
#######
doIt

content of input file:
cat .cerntst1.build.cyc.pri.ser.lst
54:CPM Async Script
56:CPM Script Batch

Try replacing:
done< ${FILE_PATH}/.${NODE_NAME}.${DOMAIN}.cyc.pri.ser.lst >>$LOG

by:
done< ${FILE_PATH}/.${NODE_NAME}.${DOMAIN}.cyc.pri.ser.lst | tee -a $LOG

That did it! Seen use of tee before but never used it myself. I see that -a appends.
Thanks
SkyyBugg