Получить информацию об объекте, вызвавшем исключение - PullRequest
0 голосов
/ 01 июня 2018

Я написал следующий фрагмент кода для обработки моего исключения.

class Business < ExceptionController
  def work(arg1,arg2)
        #####some business logic that cause exception
  end
end

class ExceptionController < ApplicationController
  rescue_from Exception, :with => :render_error_response

  def render_error_response(e)
     p e.message
     p e.backtrace
  end
end

Я регистрирую сообщение и обратную трассировку в render_error_response, определенном в контроллере исключений.Я хочу напечатать аргументы функции, т. Е. arg1, arg2 из work функции, которая вызвала исключение.

Наряду с возвратом исключения, мне нужна информация об объекте, для которого была вызвана работа def.

1 Ответ

0 голосов
/ 01 июня 2018

Вы должны будете украсить сообщение об исключении самостоятельно.

class Business < ExceptionController
  def work(arg1, arg2)
    #####some business logic that cause exception
  rescue => ex
    ex.message << (" (arg1: %p, arg2: %p, self: %p)" % [arg1, arg2, self])
    raise ex
  end
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...