Sha256: 29312b32fb3568e2139d1792a3fb8750be21f9dfb1cd8af1d7468a3912dc70b6
Contents?: true
Size: 1.5 KB
Versions: 3
Compression:
Stored size: 1.5 KB
Contents
# encoding: utf-8 # This file is distributed under New Relic's license terms. # See https://github.com/newrelic/rpm/blob/master/LICENSE for complete details. DependencyDetection.defer do @name = :rails2_error depends_on do defined?(ActionController) && defined?(ActionController::Base) end depends_on do defined?(::Rails) && ::Rails::VERSION::MAJOR.to_i == 2 end executes do ::NewRelic::Agent.logger.info 'Installing Rails 2 Error instrumentation' end executes do ActionController::Base.class_eval do # Make a note of an exception associated with the currently executing # controller action. Note that this used to be available on Object # but we replaced that global method with NewRelic::Agent#notice_error. # Use that one outside of controller actions. def newrelic_notice_error(exception, custom_params = {}) NewRelic::Agent::Instrumentation::MetricFrame.notice_error exception, :custom_params => custom_params, :request => request end def rescue_action_with_newrelic_trace(exception) rescue_action_without_newrelic_trace exception NewRelic::Agent::Instrumentation::MetricFrame.notice_error exception, :request => request end # Compare with #alias_method_chain, which is not available in # Rails 1.1: alias_method :rescue_action_without_newrelic_trace, :rescue_action alias_method :rescue_action, :rescue_action_with_newrelic_trace protected :rescue_action end end end
Version data entries
3 entries across 3 versions & 1 rubygems