Module: YogiBerra

Defined in:
lib/yogi_berra/notice.rb,
lib/yogi_berra.rb,
lib/yogi_berra/data.rb,
lib/yogi_berra/rails.rb,
lib/yogi_berra/engine.rb,
lib/yogi_berra/logger.rb,
lib/yogi_berra/resque.rb,
lib/yogi_berra/catcher.rb,
lib/yogi_berra/sidekiq.rb,
lib/yogi_berra/version.rb,
lib/yogi_berra/backtrace.rb,
lib/yogi_berra/exception_middleware.rb,
lib/yogi_berra/action_controller_catcher.rb,
lib/generators/yogi_berra/install_generator.rb

Overview

require ‘rails/generators/base’

Defined Under Namespace

Modules: ActionControllerCatcher, Generators Classes: Backtrace, Catcher, Data, Engine, ExceptionMiddleware, Logger, Notice, Resque, Sidekiq

Constant Summary collapse

VERSION =
"0.2.0"
@@ignored_exceptions =
%w{ActiveRecord::RecordNotFound AbstractController::ActionNotFound ActionController::RoutingError}
@@yogi_yml =
"config/yogi.yml"

Class Method Summary collapse

Class Method Details

.configure {|_self| ... } ⇒ Object

Yields:

  • (_self)

Yield Parameters:

  • _self (YogiBerra)

    the object that the method was called on



29
30
31
# File 'lib/yogi_berra.rb', line 29

def configure
  yield self
end

.exceptionize(exception, environment = nil, opts = {}) ⇒ Object

Stores the notice exception

See Also:



21
22
23
24
25
26
27
# File 'lib/yogi_berra.rb', line 21

def exceptionize(exception, environment = nil, opts = {})
  return false if ignored_exception?(exception)
  notice = build_notice_for(exception, opts)
  if YogiBerra.connection
    YogiBerra::Data.store!(notice, environment)
  end
end

.initializeObject



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/yogi_berra/rails.rb', line 6

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