I recently found a couple of cool [old] [tricks] for logging Rails activity directly to the console, but these solutions are pretty static once you’re inside a console session. In my experience, sometimes logging to the console is cool and most of the time it isn’t.
If you want to be able to toggle your development log between the default Rails logger and the console, just add this method to your
def rails_log_to_console(toggle) ActiveRecord::Base.logger = toggle == true ? Logger.new(STDOUT) : RAILS_DEFAULT_LOGGER reload! end
Now, you can start logging to the console at any time by doing:
>> rails_log_to_console true Reloading... => true
And turn it back off as simply as:
>> rails_log_to_console false Reloading... => true
Really, passing any argument except true to the method will switch the logging back to the default.
Are there any better ways to achieve this (like without having to call
reload!)? If you know of one, holler back in the comments.
: “http://toolmantim.com/articles/logging_rails_activity_in_script_console” : “http://toolmantim.com/articles/system_wide_script_console_logging”