module PhusionPassenger::ClassicRailsExtensions::AnalyticsLogging::ACBaseExtension

Protected Instance Methods

render_with_passenger(*args, &block) click to toggle source
# File lib/phusion_passenger/classic_rails_extensions/analytics_logging/ac_base_extension.rb, line 48
def render_with_passenger(*args, &block)
        log = request.env[PASSENGER_ANALYTICS_WEB_LOG]
        if log
                log.measure("view rendering") do
                        result = render_without_passenger(*args, &block)
                        view_runtime = @view_runtime || @rendering_runtime
                        if view_runtime
                                log.message "View rendering time: #{(view_runtime * 1000).to_i}"
                        end
                        return result
                end
        else
                render_without_passenger(*args, &block)
        end
end

Private Instance Methods

perform_action_with_passenger(*args) click to toggle source
# File lib/phusion_passenger/classic_rails_extensions/analytics_logging/ac_base_extension.rb, line 30
def perform_action_with_passenger(*args)
        # Log controller and action name.
        log = request.env[PASSENGER_ANALYTICS_WEB_LOG]
        if log
                log.begin_measure("framework request processing")
                begin
                        log.message("Controller action: #{controller_class_name}##{action_name}")
                        perform_action_without_passenger(*args)
                ensure
                        log.end_measure("framework request processing",
                                request.env["PASSENGER_ACTION_FAILED"])
                end
        else
                perform_action_without_passenger(*args)
        end
end