Learn all about the logger in this episode. See how to send messages to the log and how to customize it.
# ~/.irbrc
if ENV.include?('RAILS_ENV') && !Object.const_defined?('RAILS_DEFAULT_LOGGER')
require 'logger'
RAILS_DEFAULT_LOGGER = Logger.new(STDOUT)
end
# carts_controller.rb
def show
@cart = current_cart
logger.debug "Hello world! #{@cart.to_yaml}"
# debug, info, warn, error, fatal
end
# environment.rb
Rails::Initializer.run do |config|
config.active_record.colorize_logging = false
end
class Logger
def format_message(level, time, progname, msg)
"#{time.to_s(:db)} #{level} -- #{msg}\n"
end
end
# environments/production.rb
config.log_level = :debug
config.logger = Logger.new(...) # or log4r