如何单独设置Rails Cache日志级别?

时间:2011-08-31 08:05:08

标签: ruby-on-rails logging

由于遗留项目的原因,我使用的是旧版的rails版本2.3.2。

我在rails应用程序中将全局log_level设置为:debug。但由于我们也使用Rails.cache,因此日志文件中充满了烦人的行,例如
缓存读取:...
缓存未命中:...

我想压制这些但不影响其他“更有用”的信息,例如SQL日志记录。

怎么做?

1 个答案:

答案 0 :(得分:11)

好吧,在您的特定environment.rb文件中初始化缓存存储(在下面的示例中,我使用内存存储)之后,您可以将cache_store的日志重定向到单独的文件并调整记录器级别:

config.cache_store = ActiveSupport::Cache::MemoryStore.new(:expires_in => 5.minutes)
config.cache_store.logger = Logger.new("#{RAILS_ROOT}/log/#{RAILS_ENV}_cache.log")
config.cache_store.logger.level = Logger::INFO

除此之外,缓存存储有一个叫做沉默的方法!这将关闭记录器: - |

config.cache_store.silence!