Sha256: fba830c70cf6ed3fa82196f2ac5e31556d7b237d68d2c811448c3f81b3322b37

Contents?: true

Size: 1.98 KB

Versions: 15

Compression:

Stored size: 1.98 KB

Contents

require 'honeybadger'
require 'honeybadger/rails/controller_methods'
require 'honeybadger/rails/action_controller_catcher'

module Honeybadger
  module Rails
    def self.initialize
      if defined?(ActionController::Base)
        ActionController::Base.send(:include, Honeybadger::Rails::ActionControllerCatcher)
        ActionController::Base.send(:include, Honeybadger::Rails::ControllerMethods)
      end

      rails_logger = if defined?(::Rails.logger)
                       ::Rails.logger
                     elsif defined?(RAILS_DEFAULT_LOGGER)
                       RAILS_DEFAULT_LOGGER
                     end

      if defined?(::Rails.configuration) && ::Rails.configuration.respond_to?(:middleware)
        ::Rails.configuration.middleware.insert_after 'ActionController::Failsafe',
                                                      Honeybadger::Rack::ErrorNotifier
        ::Rails.configuration.middleware.insert_after 'Rack::Lock',
                                                      Honeybadger::Rack::UserInformer
        ::Rails.configuration.middleware.insert_after Honeybadger::Rack::UserInformer,
                                                      Honeybadger::Rack::UserFeedback
      end

      Honeybadger.configure(true) do |config|
        config.logger           = rails_logger
        config.environment_name = defined?(::Rails.env) && ::Rails.env || defined?(RAILS_ENV) && RAILS_ENV
        config.project_root     = defined?(::Rails.root) && ::Rails.root || defined?(RAILS_ROOT) && RAILS_ROOT
        config.framework        = defined?(::Rails.version) && "Rails: #{::Rails.version}" || defined?(::Rails::VERSION::STRING) && "Rails: #{::Rails::VERSION::STRING}"
      end

      if defined?(::Rails.configuration) && ::Rails.configuration.respond_to?(:after_initialize)
        ::Rails.configuration.after_initialize do
          Honeybadger::Dependency.inject!
          Honeybadger.ping(Honeybadger.configuration)
        end
      end
    end
  end
end

Honeybadger::Rails.initialize

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
honeybadger-1.16.7 lib/honeybadger/rails.rb
honeybadger-1.16.6 lib/honeybadger/rails.rb
honeybadger-1.16.5 lib/honeybadger/rails.rb
honeybadger-1.16.4 lib/honeybadger/rails.rb
honeybadger-1.16.3 lib/honeybadger/rails.rb
honeybadger-1.16.2 lib/honeybadger/rails.rb
honeybadger-1.16.1 lib/honeybadger/rails.rb
honeybadger-1.16.0 lib/honeybadger/rails.rb
honeybadger-1.15.3 lib/honeybadger/rails.rb
honeybadger-1.15.2 lib/honeybadger/rails.rb
honeybadger-1.15.1 lib/honeybadger/rails.rb
honeybadger-1.15.0 lib/honeybadger/rails.rb
honeybadger-1.14.0 lib/honeybadger/rails.rb
honeybadger-1.12.0.beta3 lib/honeybadger/rails.rb
honeybadger-1.12.0.beta2 lib/honeybadger/rails.rb