Module: Pulse::Rails

Defined in:
lib/pulse/rails.rb,
lib/pulse/rails/error_lookup.rb,
lib/pulse/rails/controller_methods.rb,
lib/pulse/rails/javascript_notifier.rb,
lib/pulse/rails/action_controller_catcher.rb,
lib/pulse/rails/middleware/exceptions_catcher.rb

Defined Under Namespace

Modules: ActionControllerCatcher, ControllerMethods, ErrorLookup, JavascriptNotifier, Middleware

Class Method Summary collapse

Class Method Details

.initializeObject



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/pulse/rails.rb', line 9

def self.initialize
  if defined?(ActionController::Base)
    ActionController::Base.send(:include, Pulse::Rails::ActionControllerCatcher)
    ActionController::Base.send(:include, Pulse::Rails::ErrorLookup)
    ActionController::Base.send(:include, Pulse::Rails::ControllerMethods)
    ActionController::Base.send(:include, Pulse::Rails::JavascriptNotifier)
  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',
                                                  Pulse::Rack
    ::Rails.configuration.middleware.insert_after 'Rack::Lock',
                                                  Pulse::UserInformer
  end

  Pulse.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
end