2

我正在将一个项目从 Rails 2 升级到 Rails 3。它曾经为站点中发生的每个异常发送异常电子邮件,我也想在 Rails 3 版本中实现该功能。有谁知道我将如何在整个站点范围内进行操作,rescue以便在出现任何错误/异常时发送电子邮件?

我会在应用程序控制器的某个地方这样做吗?

在 Rails 2 中,可以这样完成:

class ApplicationController < ActionController::Base
  include ExceptionNotification::Notifiable
  ...
end

但是,我在 Rails 3 gem 版本中没有看到任何文档,所以我不知道这是否可能

回答

我最终意识到我是为另一个项目这样做的,并且默认情况下 Rails 3 异常通知器 gem 提供上述功能而无需包含任何模块。您只需要设置中间件配置,一切都会神奇地发生

4

1 回答 1

2

我不是专家,但也许这个?

class ApplicationController < ActionController::Base
  rescue_from ActiveRecord::RecordNotFound, :with => :rescue_not_found
  # HERE YOU HAVE OTHER EXCEPTIONS YOU WANT TO HANDLE

  protected
  def rescue_not_found
     # YOUR CODE HERE
  end
end

在此页面的这张图片中,一个例外列表。

于 2013-06-07T16:32:59.303 回答