Hi Jeff, thanks for your reply!
I found the article here:
http://www.simonecarletti.com/blog/2009/11/re-raise-a-ruby-exception-in-a-rails-rescue_from-statement/
And he mentions that re-raising does not work since rails won't catch it
anymore..
has this been changed since?
I generally thought there might be a better way, as usually re-raising
exceptions is considered to be bad :)
Thanks a lot,
Christoph
On Tuesday, 12 November 2013 19:07:00 UTC+1, Jeff Lewis wrote:
>
> Hi Christoph,
>
> All you need to do is re-raise the exception after you're done using it in
> your rescue_from, so something along the lines of:
>
> $ cat ./app/controllers/foo_controller.rb
> ...
> rescue_from Exception do |e|
> # do something with e before re-raising it ...
> Rails.logger.debug("TEST: before re-raising ... e=#{e.inspect}")
> raise e
> end
> ...
>
> def testfoo
> x = 'bar' if 1/0
> ....
> end
> ....
>
> $ curl -sLi http://foo.localhost/testfoo
> ...
>
> $ cat ./log/development.log
> ...
> [c55f5] TEST: before re-raising ... e=#<ZeroDivisionError: divided by 0>
> [c55f5] Completed 500 Internal Server Error in 17ms
> [c55f5]
> ZeroDivisionError (divided by 0):
> app/controllers/foo_controller.rb:89:in `/'
> app/controllers/foo_controller.rb:89:in `testfoo'
> ...
>
> Jeff
>
> On Tuesday, November 12, 2013 6:40:12 AM UTC-8, sol wrote:
>>
>> Hi there,
>>
>> I'm using Log4r in my rails projects. On log.error an email is sent using
>> the EmailOutputter.
>> I know changed the EmailOutputter to include a global var in the subject
>> (MDC) since the subject is normally static.
>>
>> I want to set this var to the exception message, so it is sent as the
>> subject.
>>
>> Can anyone tell me how to do this in rails?
>>
>> Basically:
>>
>> raise e or some other cause
>>> -> Log4r::MDC.put('subject', e.message)
>>> continue with the exception
>>
>>
>> I found *rescue_from* but it just gives it to the handler and then stops.
>>
>> Thanks a lot,
>> Christoph
>>
>
--
You received this message because you are subscribed to the Google Groups "Ruby
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/rubyonrails-talk/b4a43f59-757b-4761-bd26-74b1ef12f714%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.