Forum: Ruby Sending mail when exception occured

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Michal L. (Guest)
on 2006-03-04 00:41
Hello!

I want to send e-mail when an exception will occur. What is important
mail should contain backtrace.
At first I redefined initialize method in
Exception class, it worked but of course I didn`t have access to
backtrace.  Now I  have redefined set_backtrace method. It works as
I want to, it`s access to backtrace and message of exception. I send
mail directly from set_backtrace, because I noticed that method is
called every
time an exception occurs.
Is it correct way? Maybe, you could propose better solution of my
problem?

Thanks in advance.
Michal
James B. (Guest)
on 2006-03-04 01:50
(Received via mailing list)
Michal Lomnicki wrote:
> Hello!

Hello!

> Is it correct way?

Does it work?  Does it allow you to go back to solving more interesting
or valuable problems?

Not always the best criteria, but worth considering.

--
James B.

http://www.ruby-doc.org       - Ruby Help & Documentation
http://www.artima.com/rubycs/ - The Journal By & For Rubyists
http://www.rubystuff.com      - The Ruby Store for Ruby Stuff
http://web2.0validator.com    - We're the Dot in Web 2.0
Michal L. (Guest)
on 2006-03-04 02:16
>> Is it correct way?
>
> Does it work?  Does it allow you to go back to solving more interesting
> or valuable problems?

Yes, it works, but I`m not sure if it works in all cases.
I`m just courious about other solution of this problem:)
Kevin B. (Guest)
on 2006-03-05 06:42
(Received via mailing list)
On Friday 03 March 2006 18:16, Michal Lomnicki wrote:
> >> Is it correct way?
> >
> > Does it work?  Does it allow you to go back to solving more interesting
> > or valuable problems?
>
> Yes, it works, but I`m not sure if it works in all cases.
> I`m just courious about other solution of this problem:)

Unless I completely misunderstood you, why not just do:

begin
  # Do whatever it is you're going to do
rescue Exception => e
  # Create your email
  message_string = "An error has occurred.  Backtrace: #{e.backtrace}"
  # Email it off however.
end

I get the strange feeling though that you want more than this...?
Michal L. (Guest)
on 2006-03-05 10:52
> Unless I completely misunderstood you, why not just do:
>
> begin
>   # Do whatever it is you're going to do
> rescue Exception => e
>   # Create your email
>   message_string = "An error has occurred.  Backtrace: #{e.backtrace}"
>   # Email it off however.
> end
>

Of course it`s the simplest way, but I`ll have to invoke that in every
rescue block. So, let`s say that there is _uncatched_ exception, even
then mail should be sent. I redefined set_backtrace in Exception class.

> I get the strange feeling though that you want more than this...?

I hope that now my problem is clear.
This topic is locked and can not be replied to.