in reply to Running with warnings on a remote server

Well, a UNIX logging server would probably be the best solution.

Next best: I'm sure one of the UberMonks will post some kind of cool Carp overloading scheme that forks off a process to do error logging and wait for an exclusive lock on the file, without holding up your script.

But then there's my little kludge: I just set up an "errors" directory in each of my script directories, owned by the webuser.
# TOP OF SCRIPT use File::Basename; my ($bname, $bpath, $bsuffix) = fileparse($0,'.pl','.cgi'); my $LOGFILE = "errors/$bname.txt"; if (-s $LOGFILE > 10000) { unlink $LOGFILE; } open (STDERR, ">>$LOGFILE") or die "Couldn't open script log: $!\n";
It's not perfect, and race conditions exist. But, it works well enough for my needs -- I'm mainly concerned with just redirecting the errors so I don't get the evil 500, not so much with keeping track of the errors.

So, it would be easy enough to toss these errors out to a web-accessible directory and accomplish what you want.