Rails在渲染模板时关闭控制台日志记录

时间:2018-05-04 15:39:05

标签: ruby-on-rails ruby logging

我有一个表格中的记录集合

我正在使用它们为我的javascript函数制作一个javascript对象

我创建了一个帮助器方法来循环遍历记录数组并构建一个哈希数组,然后我将其转换为to_jsonhtml_safe

我还制作了一个json模板,输出相同的内容。

我很想知道哪个运行速度更快,所以我使用Benchmark。

它工作正常,我可以看到结果,但由于其中一个策略是关于渲染模板,它会导致控制台日志变得混乱:

                user     system      total        real
ruby method     0.040000   0.000000   0.040000 (  0.044988)
json template   Rendered dispatch/trucks/_locations.json.jbuilder (0.9ms)
  Rendered dispatch/trucks/_locations.json.jbuilder (0.9ms)
  Rendered dispatch/trucks/_locations.json.jbuilder (0.9ms)
  Rendered dispatch/trucks/_locations.json.jbuilder (0.8ms)

  ... hundreds of lines of logging

  Rendered dispatch/trucks/_locations.json.jbuilder (0.7ms)
  Rendered dispatch/trucks/_locations.json.jbuilder (0.7ms)
  Rendered dispatch/trucks/_locations.json.jbuilder (0.7ms)
  Rendered dispatch/trucks/_locations.json.jbuilder (0.7ms)
  0.190000   0.130000   0.320000 (  0.317963)

我想知道在我运行基准测试时是否有办法阻止"Rendered _template.json"停止出现。有办法以某种方式切换它吗?我知道您可以使用

切换打开和关闭数据库查询日志记录
# turns on database logger
ActiveRecord::Base.logger = Logger.new(STDOUT) if defined?(ActiveRecord::Base)

# turns off database logger
ActiveRecord::Base.logger = nil

我用它们进行测试和调整。

如果我无法得到答案,我可能需要查看源代码,但这并不重要,我只是好奇。

0 个答案:

没有答案