class Technologic::Setup
Public Class Methods
for(application)
click to toggle source
# File lib/technologic/setup.rb, line 6 def for(application) technologic_config = application.config.technologic setup_subscribers(technologic_config) setup_loggers(technologic_config) warn_duration_unit_not_set(technologic_config) end
Private Class Methods
setup_loggers(config)
click to toggle source
# File lib/technologic/setup.rb, line 24 def setup_loggers(config) Technologic::FatalSubscriber.on_event { |e| Technologic::Logger.log(:fatal, e) } if config.log_fatal_events Technologic::ErrorSubscriber.on_event { |e| Technologic::Logger.log(:error, e) } if config.log_error_events Technologic::WarnSubscriber.on_event { |e| Technologic::Logger.log(:warn, e) } if config.log_warn_events Technologic::InfoSubscriber.on_event { |e| Technologic::Logger.log(:info, e) } if config.log_info_events Technologic::DebugSubscriber.on_event { |e| Technologic::Logger.log(:debug, e) } if config.log_debug_events end
setup_subscribers(config)
click to toggle source
# File lib/technologic/setup.rb, line 16 def setup_subscribers(config) ActiveSupport::Notifications.subscribe(%r{\.fatal$}, Technologic::FatalSubscriber) if config.subscribe_to_fatal ActiveSupport::Notifications.subscribe(%r{\.error$}, Technologic::ErrorSubscriber) if config.subscribe_to_error ActiveSupport::Notifications.subscribe(%r{\.warn$}, Technologic::WarnSubscriber) if config.subscribe_to_warn ActiveSupport::Notifications.subscribe(%r{\.info$}, Technologic::InfoSubscriber) if config.subscribe_to_info ActiveSupport::Notifications.subscribe(%r{\.debug$}, Technologic::DebugSubscriber) if config.subscribe_to_debug end
warn_duration_unit_not_set(config)
click to toggle source
# File lib/technologic/setup.rb, line 32 def warn_duration_unit_not_set(config) return if config.__send__(:log_duration_in_ms_set_explicitly?) warn "WARNING: Technologic.log_duration_in_ms is not set. In a future version of Technologic, the default value will change from false to true. To maintain existing behavior, set `application.config.technologic.log_duration_in_ms = false` explicitly." end