Rails 4服务中的记录器级别错误

时间:2017-11-10 19:59:34

标签: ruby-on-rails

我有一个Rails 4应用程序。在我的development.rb配置文件中,我有: config.log_level =:info。

对于大多数应用程序,它只能显示信息级别的消息。查询消息也消失了,这没关系。

但是,我的lib文件夹中有一些服务。对于他们来说,看起来它没有获得环境日志级别。这是代码:

    @logger = Logger.new(Rails.root.join("log", APP_CONFIG['LOG_FILE']))
    if @logger.debug?
      @logger.info "Logger level = debug"
    else
      @logger.info "Logger level > debug"
    end

输出:

I, [2017-11-10T20:50:51.189067 #36138]  INFO -- : Logger level = debug

我错过了什么?

1 个答案:

答案 0 :(得分:0)

您正在调用.info方法,这会导致日志条目被标记为INFO

致电Logger#debug会导致您(我认为)期待看到的内容:

@logger = Logger.new(Rails.root.join("log", APP_CONFIG['LOG_FILE']))
if @logger.debug?
  @logger.debug "Logger level = debug" # => I, [...]  DEBUG -- : Logger level = debug
else
  @logger.info "Logger level > debug"
end