Sha256: 6e92c863d9bcba4af078668c8e78d805eb363d5f0b94fcb2f2a6c154780286a6

Contents?: true

Size: 1.4 KB

Versions: 11

Compression:

Stored size: 1.4 KB

Contents

require 'airbrake'
require 'rails'

require 'airbrake/rails/middleware'

module Airbrake
  class Railtie < ::Rails::Railtie
    rake_tasks do
      require 'airbrake/rake_handler'
      require 'airbrake/rails3_tasks'
    end

    initializer "airbrake.middleware" do |app|

      middleware = if defined?(ActionDispatch::DebugExceptions)
        # Rails >= 3.2.0
        "ActionDispatch::DebugExceptions"
      else
        # Rails < 3.2.0
        "ActionDispatch::ShowExceptions"
      end

      app.config.middleware.insert_after middleware,
        "Airbrake::Rails::Middleware"

      app.config.middleware.insert 0, "Airbrake::UserInformer"
    end

    config.after_initialize do
      Airbrake.configure(true) do |config|
        config.logger           ||= config.async? ? ::Logger.new(STDERR) : ::Rails.logger
        config.environment_name ||= ::Rails.env
        config.project_root     ||= ::Rails.root
        config.framework        = "Rails: #{::Rails::VERSION::STRING}"
      end

      ActiveSupport.on_load(:action_controller) do
        # Lazily load action_controller methods
        #
        require 'airbrake/rails/controller_methods'

        include Airbrake::Rails::ControllerMethods
      end

      if defined?(::ActionController::Base)
        require 'airbrake/rails/javascript_notifier'

        ::ActionController::Base.send(:include, Airbrake::Rails::JavascriptNotifier)
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
airbrake-3.2.1 lib/airbrake/railtie.rb
airbrake-3.1.17 lib/airbrake/railtie.rb
airbrake-3.1.16 lib/airbrake/railtie.rb
airbrake-3.1.15 lib/airbrake/railtie.rb
airbrake-3.1.14 lib/airbrake/railtie.rb
airbrake-3.1.13 lib/airbrake/railtie.rb
airbrake-3.1.12 lib/airbrake/railtie.rb
airbrake-3.1.11 lib/airbrake/railtie.rb
airbrake-3.1.10 lib/airbrake/railtie.rb
airbrake-3.1.9 lib/airbrake/railtie.rb
airbrake-3.1.8 lib/airbrake/railtie.rb