Sha256: 9a1ec1ed9b836718e74a16c9ead590b13a8d0a628ebcbafc1f58a96df7f3990f

Contents?: true

Size: 1.08 KB

Versions: 2

Compression:

Stored size: 1.08 KB

Contents

require_relative './rails/middleware.rb'
require_relative './models/collection.rb'
require_relative './instrument/metrics_collector.rb'

module RailsPerformance
  class Engine < ::Rails::Engine

    if RailsPerformance.try(:enabled) # for rails c

      config.app_middleware.insert_after ActionDispatch::Executor, RailsPerformance::Rails::Middleware

      initializer :configure_metrics, after: :initialize_logger do
        ActiveSupport::Notifications.subscribe(
          "process_action.action_controller",
          RailsPerformance::Instrument::MetricsCollector.new
        )

        config.after_initialize do |app|
          ActionView::LogSubscriber.send :prepend, RailsPerformance::Extensions::View
          ActiveRecord::LogSubscriber.send :prepend, RailsPerformance::Extensions::Db
        end
      end

      if const_defined?("Sidekiq")
        require_relative './gems/sidekiq.rb'
        Sidekiq.configure_server do |config|
          config.server_middleware do |chain|
            chain.add RailsPerformance::Gems::Sidekiq
          end
        end
      end

    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rails_performance-0.9.2 lib/rails_performance/engine.rb
rails_performance-0.9.1 lib/rails_performance/engine.rb