gpt4 book ai didi

ruby-on-rails - 使用 Rails 动态异常处理的新 Relic 404、422 和 500 异常

转载 作者:行者123 更新时间:2023-12-04 02:53:34 31 4
gpt4 key购买 nike

我正在运行一个 Rails 4.0.0.rc 应用程序,使用 New Relic 进行可用性/异常监控。我用这段代码修改了 application.rb 以启用动态异常页面:

config.exceptions_app = self.routes

但是,我不再在 New Relic 中看到 404422500 异常。知道如何取回它们吗?

编辑:

注意:这是 Controller 处理状态的样子:

class ErrorsController < ApplicationController

# GET /404
def missing
render status: 404
end

# GET /422
def unprocessable
render status: 422
end

# GET /500
def exception
render status: 500
end

end

最佳答案

听起来你想手动调用 NewRelic::Agent.notice_error。

您可以从 Rack env 重建请求对象,并根据需要构建异常。

像这样:

request = Rack::Request(env)

options = {
:uri => request.url,
:referrer => request.referrer,
:request_params => request.params
}

NewRelic::Agent.notice_error(your_custom_exception, options)

请注意,请求参数将按原样传输,因此请小心过滤任何敏感信息。

来源:
我在 New Relic 担任 Ruby 代理工程师
NoticedError 的文档:http://rubydoc.info/gems/newrelic_rpm/frames

关于ruby-on-rails - 使用 Rails 动态异常处理的新 Relic 404、422 和 500 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17139019/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com