Class: Chillout::RailsInitializer
- Inherits:
-
Object
- Object
- Chillout::RailsInitializer
- Defined in:
- lib/chillout/railtie.rb
Instance Method Summary collapse
- #after_eager_load ⇒ Object
-
#initialize(rails_app, chillout_config, rails_logger) ⇒ RailsInitializer
constructor
A new instance of RailsInitializer.
- #start(listeners_injector = ListenerInjector.new) ⇒ Object
Constructor Details
#initialize(rails_app, chillout_config, rails_logger) ⇒ RailsInitializer
Returns a new instance of RailsInitializer.
36 37 38 39 40 |
# File 'lib/chillout/railtie.rb', line 36 def initialize(rails_app, chillout_config, rails_logger) @rails_app = rails_app @chillout_config = chillout_config @rails_logger = rails_logger end |
Instance Method Details
#after_eager_load ⇒ Object
65 66 67 68 |
# File 'lib/chillout/railtie.rb', line 65 def after_eager_load state_machine = Integrations::StateMachine.new state_machine.enable(Chillout.client) if state_machine.available? end |
#start(listeners_injector = ListenerInjector.new) ⇒ Object
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/chillout/railtie.rb', line 42 def start(listeners_injector = ListenerInjector.new) listeners_injector.logger = @rails_logger @rails_logger.info "[Chillout] Railtie initializing" config = build_config() client = Client.new(config) if config.creations_tracking listeners_injector.inject! @rails_logger.info "[Chillout] Creation monitor enabled" end @rails_app.middleware.use Middleware::CreationsMonitor, client sidekiq = Integrations::Sidekiq.new sidekiq.enable(client) if sidekiq.available? if config.requests_tracking @rails_logger.info "[Chillout] Requests monitor enabled" Subscribers::ActionControllerNotifications.new.enable(client) end client.start Chillout.client = client end |