Как отключить регистрацию сообщений конвейера активов (звездочек) в Rails 3.1? - PullRequest
377 голосов
/ 11 июня 2011

Звездочки, как правило, довольно многословны в журнале (dev) по умолчанию в Rails 3.1 (RC1):

Started GET "/assets/application.css" for 127.0.0.1 at 2011-06-10 17:30:45 -0400
Compiled app/assets/stylesheets/application.css.scss  (5ms)  (pid 6303)


Started GET "/assets/application.js" for 127.0.0.1 at 2011-06-10 17:30:45 -0400
Compiled app/assets/stylesheets/default.css.scss  (15ms)  (pid 6303)

...
Started GET "/assets/default/header_bg.gif" for 127.0.0.1 at 2011-06-10 17:30:45 -0400
Served asset /default/header_logo.gif - 304 Not Modified  (7ms)  (pid 6303)
Served asset /default/header_bg.gif - 304 Not Modified  (0ms)  (pid 6246)
Served asset /default/footer_bg.gif - 304 Not Modified  (49ms)  (pid 6236)
...

Я бы хотел уменьшить уровень многословия или вообще отключить его. Я предполагаю, что есть простой способ отключить или уменьшить многословность ведения журнала, добавив строку конфигурации в environment.rb или development.rb, аналогичную config.active_record.logger = nil, которая заставляет SQL-выражения ActiveRecord молчать.

Ответы [ 14 ]

5 голосов
/ 28 августа 2013

В config / environment / development.rb добавьте:

config.assets.debug = false

config.assets.logger = false

Это поможет решить вашу проблему.

2 голосов
/ 07 января 2014

Lograge для выигрыша. Он убивает надоедливые настройки регистратора Rails из коробки (например, регистрация ресурсов, регистрация частичного рендеринга) и настраивается, если вы хотите добавить / удалить определенные предметы.

0 голосов
/ 11 января 2014

Помогает упомянутое ниже решение для связи:

https://github.com/evrone/quiet_assets

Кроме того, как показано ниже, оно отлично работает для меня

3,1 (только) (3,2 перерыва до_датчика)

app\config\initializers\quiet_assets.rb

Rails.application.assets.logger = Logger.new('/dev/null')
Rails::Rack::Logger.class_eval do
  def before_dispatch_with_quiet_assets(env)
    before_dispatch_without_quiet_assets(env) unless env['PATH_INFO'].index("/assets/") == 0
  end
  alias_method_chain :before_dispatch, :quiet_assets
end
3.2 Rails - Rack root tap approach
app\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
    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 
0 голосов
/ 01 сентября 2011

В конфигурации / средах добавьте config.log_level = :error к файлам .rb, которые вы хотите изменить. Это изменит настройки журнала только на ошибку. Я надеюсь, что это помогло!

...