【问题标题】:logger.debug not writing to log file in Railslogger.debug 未写入 Rails 中的日志文件
【发布时间】:2011-04-05 23:20:17
【问题描述】:

我正在尝试在 Rails 中调试模型,因此我正在使用以下代码: logger.debug('asasd')

但是,我正在跟踪日志文件 development.log,但没有看到它添加到此文件中。

  1. 我确定这个模块正在运行
  2. 我已确认运行时错误正在记录到此文件中,并且在我拖尾时会看到它们。

如何让它工作?

【问题讨论】:

  • 您使用的是哪个版本的 Rails?

标签: ruby-on-rails ruby


【解决方案1】:

确保您已将日志级别设置为在环境/适当的_env_file.rb中调试:

config.log_level = :debug

并确保根据运行环境跟踪正确的日志文件。

【讨论】:

【解决方案2】:

您可以尝试在记录器上调用flush 以强制它写入此文件。通常这会在每个请求之后发生:

logger.debug("asasd")
logger.flush

auto_flushing 实例本身也有 auto_flushing 设置:

Rails.logger.auto_flushing = true

这将使调用logger.flush 变得不必要,因为Rails 会在每次写入时自动将缓冲的输出刷新到日志文件。

【讨论】:

  • 此外,logger.flush 现在是一种已弃用的无操作方法。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-07-04
  • 2016-05-08
  • 2012-11-11
  • 2015-03-19
  • 2010-12-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多