Setting up the logger in rails 3
By default, Rails should be logging to an environment-specific log file in your project's log
directory. It will be called either test.log
, development.log
, or production.log
depending on which environment you're running in.
You can log directly to Rails' logger using the Rails.logger
object:
Rails.logger.info "My info message"
Rails.logger.debug "My debugging message"
Rails.logger.warn "My warning message"
Rails used to use Ruby's standard logging class, but it now uses ActiveSupport::BufferedLogger
. (The official Ruby on Rails Guides are incorrect when they say "Rails makes use of Ruby’s standard logger to write log information").
Matthew Stopa
Updated on October 16, 2020Comments
-
Matthew Stopa over 3 years
I'm trying to figure out how to use the logger with rails 3. I need to log to a file not have it in the console, but I just can't figure out how to set it up and then, how to write something to that log. I tried the rails docs but they didn't really make it clear.
-
Matthew Stopa almost 13 yearsThanks a billion times over. Seriously saved me today
-
Duke almost 13 yearsI believe it's using ActiveSupport::BufferedLogger ... just check out Rails.logger.class
-
Dylan Markow almost 13 years@Duke You are absolutely correct. Looks like the official Rails Guides are incorrect.