sub setlog { unless( ($log = tie(*STDOUT, 'your::module', ">>$LOGFILE")) ) } -------------- your::module ------------- sub PRINT { $fh # file handle my $line = (caller(0))[2]; syswrite $fh, sprintf("[ %-18.18s %s %4.4s ] %s %s", "$script $line", }