我有一个模型,但我不希望它把它的查询写入公共(public)日志。是否可以为某些型号切换记录器?
最佳答案
你可以这样做:
如果你想以不同的方式格式化它,请创建一个自定义记录器。如果格式需要相同,你可以忽略它。
class ModelLogger < Logger
def format_message(severity, timestamp, progname, msg)
"#{timestamp.to_formatted_s:)db)} #{severity} #{msg}\n"
end
end
在 config/initializers/中,创建 logs.rb 并添加:
model_logfile = File.open("#{RAILS_ROOT}/log/model.log", 'a')
model_logfile.sync = true
MODEL_LOG = ModelLogger.new(model_logfile)
现在,在您重新启动服务器后,
MODEL_LOG.debug "This will be logged to model.log"
MODEL_LOG.error "Errors also can be logged."
关于ruby - Rails 3 模型记录器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11883052/