my $log_fh = \*LOG_FH; #### my $log_fh; # = \*LOG_FH; $log_fh = LOG_MSG_OPEN($log_fh,$logfile); LOG_MSG($log_fh,$vbse,"v",$lglvl,5,"GENERAL","Starting Script $0"); ... module ... sub LOG_MSG_OPEN { my $par_fh = $_[0]; my $par_filepath = $_[1]; open($par_fh,"> $par_filepath") or die ("Can't open $par_filepath: $!\n"); $par_fh->autoflush(1); return *$par_fh; } sub LOG_MSG { my $par_fh = shift (@_); ... print $par_fh "$logdate,$logtime,$SEV_KEYWORD,$par_FUNCTION,@line\n"; }