class Doctor::Engine
Public Instance Methods
backup_current_logs()
click to toggle source
# File lib/doctor/engine.rb, line 39 def backup_current_logs OpenStruct.new( rails: Rails.logger, active_record: ActiveRecord::Base.logger, action_controller: ActionController::Base.logger ) end
call_with_doctor(env)
click to toggle source
# File lib/doctor/engine.rb, line 14 def call_with_doctor(env) logs = nil begin logs = backup_current_logs define_doctor_log_if_needed(env) call_without_doctor(env) ensure return_logs(logs) unless logs.nil? end end
define_doctor_log_if_needed(env)
click to toggle source
# File lib/doctor/engine.rb, line 47 def define_doctor_log_if_needed(env) return unless env['PATH_INFO'].include?('doctor/health_check') doctor_log = Logger.new("#{Rails.root}/log/doctor.log") Rails.logger = doctor_log ActiveRecord::Base.logger = doctor_log ActionController::Base.logger = doctor_log end
return_logs(logs)
click to toggle source
# File lib/doctor/engine.rb, line 31 def return_logs(logs) Rails.logger = logs.rails unless logs.rails.nil? ActiveRecord::Base.logger = logs.active_record unless logs.active_record.nil? ActionController::Base.logger = logs.action_controller unless logs.action_controller.nil? end