[Rails] 불필요한 애플리케이션 로그 삭제

4832 단어 RailsRails4
rails server 하고 있을 때, 아래와 같은 css나 js가 대량으로 출력되어 로그가 보기 어려워지는 일이 있다.

log/development.log
Started GET "/assets/application-ab419c13308629544db2ed02ed5cccfb.css?body=1" for 192.168.56.1 at 2015-04-03 13:20:39 +0900

Started GET "/assets/jquery-87424c3c19e96d4fb033c10ebe21ec40.js?body=1" for 192.168.56.1 at 2015-04-03 13:20:39 +0900

그럴 때는 config/initializers 디렉토리에 다음 파일을 추가하면 로그가 깨끗해진다

config/initializers/quiet_assets.rb
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
    if env['HTTP_X_RAILS_ENABLE_ASSETS_LOG'].nil? && env['PATH_INFO'].index('/assets/') == 0
      Rails.logger.level = Logger::ERROR
    end
    call_without_quiet_assets(env).tap do
      Rails.logger.level = previous_level
    end
  end
  alias_method_chain :call, :quiet_assets
end

또한 Chrome의 extension (Header Hacker)을 ​​사용하면 css와 js의 로그도보고 싶을 때 다음 설정으로 쉽게 표시를 재개하는 것도 가능 (˚д゚) 우마



설정값


Title
Header
Append/Replace
문자열


rails_enable_assets_log
X_RAILS_ENABLE_ASSETS_LOG
Append
1


설정 예

좋은 웹페이지 즐겨찾기