Rails Tip Snippet: Logging informational messages to your log

22 March 2007

This “Rails Tip Snippet” is one in a series of small blocks of code that will make your life developing Rails applications a bit easier.

This first snippet shows you how you can log informational message to your log file so you can track any important actions that happened. As an example you may want to log all user accounts that get deleted:

def destroy
   @user = User.find(params[:id])
   @user.destroy!
   logger.info(“User account ‘#{@user.login}’ deleted by user #{current_user.login})
   …
end
Line 4 will put a string like “User account ‘johnlocke” delete by user ariejan” in your log file. Use that information any way you want.

You may also use the logger to inspect variables:

logger.info(“article inspection: #{@article.inspect}“)
Until next time! Any tips are welcome at tips@ariejan.net.