From: Robert Klemme [mailto:bob.news@gmx.net]
Sent: Friday, October 07, 2005 6:52 AM
To: ruby-talk ML
Subject: Re: Customizing Exception, but only when an error is raised
<snip>
It would be interesting to learn what real world problem
Daniel wants to solve...Kind regards
robert
I was trying to emulate Perl's $SIG{__DIE__} handler for reports running
via cron where, whenever an error occurred, an email would be sent to me
(or whoever). While I can log errors to a file, I still have to check
the log files periodically to make sure they ran as expected. Every
once in a while something goes awry - network glitch, database glitch -
whatever.
No, I don't want to run a separate program to tail log files looking for
errors.
My initial plan (which I had nearly complete) was to do something like
this:
# At the top of your program
require "exception/mail"
Exception.mail_host = "mailhost.foo.com"
Exception.mail_to = "person@foo.com"
Then, whenever an error was raised anywhere in my program an email would
be sent out. There are plenty of other options you could configure,
btw, though the others all have reasonable defaults.
The problem, I realized, was that even if I wanted to ignore an error
(or handle it some other way), an email would still be sent out. Now I'm
thinking that maybe I should redefine Kernel#raise instead.
Regards,
Dan
···
-----Original Message-----