从错误日志中删除资源加载

Rub*_*tic 6 logging ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1

是否可以从日志中删除资源(例如图像)的加载?我想在我的日志+中只有视图渲染与activerecord的东西,没有其他东西分散注意力.

您是否可以设置记录器以从日志中删除某些元素,例如资产加载?谢谢

Mik*_*kin 3

您可以使用以下方式添加初始化程序 quit_assets.rb:

def is_windows?
    RUBY_PLATFORM['mswin32'] || RUBY_PLATFORM['mingw'] || RUBY_PLATFORM['cygwin']
end

destination = is_windows?? 'NUL' : '/dev/null'

Rails.application.assets.logger = Logger.new(destination)
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'].index("/assets/") == 0
    call_without_quiet_assets(env).tap do
      Rails.logger.level = previous_level
    end
  end
  alias_method_chain :call, :quiet_assets
end
Run Code Online (Sandbox Code Playgroud)