因此,我使用错误控制器处理异常,以便在生产中向我的用户显示动态内容。我在我的路由文件中有它要做:
# Errors
%w( 404 422 500 ).each do |code|
get code, :to => "errors#show", :code => code
end
现在唯一的问题是,当我想通知 Airbrake 时,我正在路由错误,例如我在控制器中丢失了信息。如何维护异常信息并将其发送到 500 上的 Airbrake?现在我得到的只是异常发生时发生的环境,这对调试目的帮助不大。
class ErrorsController < ApplicationController
def show
notify_airbrake(env)
render status_code.to_s, :status => status_code
end
protected
def status_code
params[:code] || 500
end
end