Rails disable logging of asset pipeline messages

There are many assets related log messages in log file. It causes Rack to use the Rails logger very  frequently.

To hide the messages, add this line to your config (config/application.rb or config/environments/production.rb or config/environment.rb):

[codesyntax lang=”rails”]
1. config.assets.logger = false

config.assets.debug = false # optional

2. rake assets:precompile RAILS_ENV=production
[/codesyntax]

 

Solution 2.

Place the following code in config/initializers/quiet_assets.rb

[codesyntax lang=”rails”]
if Rails.env.development?

Rails.application.assets.logger = Logger.new(‘/dev/null’)

Rails::Rack::Logger.class_eval do

def call_with_quiet_assets(env)

previous_level = Rails.logger.level

Rails.logger.level = Logger::ERROR if env[‘PATH_INFO’] =~ %r{^/assets/}

call_without_quiet_assets(env)

ensure

Rails.logger.level = previous_level

end

alias_method_chain :call, :quiet_assets

end

end
[/codesyntax]

The code was found here.

 

 

Discussions:

* http://stackoverflow.com/questions/6312448/how-to-disable-logging-of-asset-pipeline-sprockets-messages-in-rails-3-1

* Benchmarking of performance – https://github.com/rails/rails/pull/3795

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>