Ruby on rails 有没有办法手动推送NewRelic错误?
在我们的Rails应用程序中,我们拯救了ApplicationController上的大多数异常,以提供正确的API响应,但仍然希望使用ErrorCollector跟踪发生的错误。有没有一种方法可以手动将错误发送到NewRelic?不确定这是否是建议使用的方法,但这种方法非常有效:Ruby on rails 有没有办法手动推送NewRelic错误?,ruby-on-rails,newrelic,Ruby On Rails,Newrelic,在我们的Rails应用程序中,我们拯救了ApplicationController上的大多数异常,以提供正确的API响应,但仍然希望使用ErrorCollector跟踪发生的错误。有没有一种方法可以手动将错误发送到NewRelic?不确定这是否是建议使用的方法,但这种方法非常有效: NewRelic::Agent.agent.error_collector.notice_error( exception ) 根据我在NewRelic代理代码中看到的,你可以做 NewRelic::Agent.注
NewRelic::Agent.agent.error_collector.notice_error( exception )
根据我在NewRelic代理代码中看到的,你可以做
NewRelic::Agent.注意错误(异常,选项)
我已经测试了这个,并在我的堆栈中运行了它
以下是控制器中的一个示例:
class ApplicationController < ActionController::Base
rescue_from ActiveRecord::RecordInvalid, with: :rescue_invalid_record
private
def rescue_invalid_record(exception)
NewRelic::Agent.notice_error(exception)
end
end
class ApplicationController
注意错误和增量的API调用的完整文档错误度量是New Relic Ruby Agent API文档这里的文档是:它基本上是包含在其解决方案中的方法Igor的别名,除了返回nil而不是异常。因此,虽然它的行为有点不同,但本质上是一样的,也没有那么详细。要添加更多的上下文,我先添加了:NewRelic::Agent.add_custom_属性({custom_params:params.To_unsafe_h.merge(current_user:current_user.id),uri:request.original_url}),我在NewRelic工作。虽然这种方法在今天可能有效,但它不是我们公共API的一部分,因此不应该使用——它可能在将来的任何时候发生变化。正确的使用方法是NewRelic::Agent。注意错误
,如nort的回复中所述。任何未在我们的公开文档中记录的内容都属于同一类别。