我有一个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
我错过了什么?
答案 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