in reply to Logging the results of 'die'
What you need to do is use a die handler. Here's a complete program that logs errors to a file:
#!/opt/perl/bin/perl use warnings 'all'; use strict; { my ($fh, $logfile); INIT { $logfile = "/var/log/whatever/errors"; open $fh => ">> $logfile" or die "Failed to open $logfile: $!\ +n"; $SIG {__DIE__} = sub { print $fh @_; print $fh "\n" unless $_ [-1] =~ /\n\z/; }; } END { $fh and (close $fh or warn "Failed to close $logfile: $!\n"); } } print "Hello, world\n"; die "Meep, meep!"; print "I should be dead....\n"; __END__
-- Abigail
|
|---|