0

開発マシンで問題をデバッグしようとしていますが、本番データがデータベースにロードされています。その結果、システム上に一致するファイルがないイメージ パスが多数あるため、Rails はルーティング テーブルを介してそれらすべてを解決しようとします。https://stackoverflow.com/a/12227802/83743ActionController::RoutingErrorのおかげでメッセージを無視する方法を見つけましたが、サーバーログにはまだ必要以上のノイズが残っています。特定のパターンに一致するルートを解決しようとさえしないようにRailsに指示する方法はありますか? または、すべてのログ エントリを非表示にする方法はありますか? Rails3.0を使用しています。Started GET "/system/attachments/...

4

1 に答える 1

0

おそらく、この初期化子を変更できます。

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

この質問から: Rails 3.1 でアセット パイプライン (スプロケット) メッセージのロギングを無効にする方法は? 優先ログを除外します。

于 2013-04-26T14:40:48.447 に答える