В нашем приложении Rails мы избавляемся от большинства исключений на ApplicationController, чтобы дать правильный ответ API, но все же хотим отслеживать ошибки, происходящие с помощью ErrorCollector. Есть ли способ вручную отправить ошибку в NewRelic?
Есть ли способ вручную нажать на ошибку NewRelic?
Ответ 1
Основываясь на том, что я вижу в коде агента 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
Ответ 2
Не уверен, что он рекомендовал использовать, но это отлично работает:
NewRelic::Agent.agent.error_collector.notice_error( exception )
Ответ 3
Полная документация по вызову API для уведомления об ошибках и приращения показателя ошибки - это новая документация API нового Relic Ruby Agent http://rdoc.info/github/newrelic/rpm/NewRelic/Agent/Transaction.notice_error