use Tie::LogFile; my $logfile = '/var/log/foo'; tie(*LOG, 'Tie::LogFile', $logfile, format => '%c (%p) [%d] %m', tformat => '%X %x') or die $!; open(DATEI,"<$datei") or log_p($!); # hier bei Fehler in die LOG-Datei schreiben... #... close DATEI or log_p($!); close(LOG) or die "Couldn't close $logfile\n"; sub log_p{ print "Es ist folgender Fehler aufgetreten: $!\n"; print LOG $!; }