在 rails 3 中设置记录器

Posted

技术标签:

【中文标题】在 rails 3 中设置记录器【英文标题】:Setting up the logger in rails 3 【发布时间】:2011-08-26 13:11:21 【问题描述】:

我正在尝试弄清楚如何将记录器与 rails 3 一起使用。我需要登录到控制台中没有它的文件,但我只是不知道如何设置它,然后,如何向该日志写入一些内容。我尝试了 rails 文档,但他们并没有真正说清楚。

【问题讨论】:

【参考方案1】:

默认情况下,Rails 应该记录到项目的log 目录中特定于环境的日志文件。它将被称为 test.logdevelopment.logproduction.log,具体取决于您运行的环境。

您可以使用 Rails.logger 对象直接登录到 Rails 的记录器:

Rails.logger.info "My info message"
Rails.logger.debug "My debugging message"
Rails.logger.warn "My warning message"

Rails 过去使用Ruby's standard logging class,但现在使用ActiveSupport::BufferedLogger。 (官方Ruby on Rails Guides 说“Rails 使用 Ruby 的标准 logger 写入日志信息”是错误的)。

【讨论】:

感谢十亿倍。今天真的救了我 我相信它正在使用 ActiveSupport::BufferedLogger ...只需查看 Rails.logger.class @Duke 你是绝对正确的。看起来官方的 Rails 指南不正确。

以上是关于在 rails 3 中设置记录器的主要内容,如果未能解决你的问题,请参考以下文章

在 Rails 3 中设置会话超时

在 Rails 3 中设置环境变量(设计 + Omniauth)

确定根记录器是不是在 Python 中设置为 DEBUG 级别?

在 python 中设置基本记录器的最简单方法是啥?

python 如何在tensorflow中设置日志记录级别

在 Rails 4 迁移中设置自定义主键的问题