在我们的 Rails 应用程序中,我们拯救了 ApplicationController 上的大多数异常以提供正确的 API 响应,但仍希望使用 ErrorCollector 跟踪发生的错误。有没有办法手动向 NewRelic 发送错误?
问问题
6129 次
3 回答
39
根据我在 New Relic 代理代码中看到的内容,您可以执行
NewRelic::Agent.notice_error(exception, options)
我已经对此进行了测试,并在我的堆栈中运行了它
这是控制器中的示例:
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
于 2013-05-15T04:11:44.550 回答
6
不确定它是否是推荐的使用方式,但这非常有效:
NewRelic::Agent.agent.error_collector.notice_error( exception )
于 2012-09-26T19:54:26.930 回答
1
用于通知错误和增加错误度量的 API 调用的完整文档是此处的 New Relic Ruby Agent API 文档http://rdoc.info/github/newrelic/rpm/NewRelic/Agent/Transaction.notice_error
于 2013-06-07T21:54:40.960 回答