首页 > 解决方案 > Rails/Ruby 日志记录,如何“缓冲/转储”日志记录?

问题描述

我想知道是否有某种“缓冲”Rails.logger(ruby Logger)输出的方式。

Rails.logger.buffer # start buffering content, pending decision later to log or discard it

if check1
  Rails.logger.info "Valid date: check1"
else
  Rails.logger.info "Invalid data: check1"
end

# ...

if check15
  Rails.logger.info "Valid date: check15"
else
  Rails.logger.info "Invalid data: check15"
end

if does_exist_in_database
  Rails.logger.buffer.clear  # I am no longer interested in the logs cached up till now
else
  Rails.logger.buffer.output # I am interested in the logs cached; "log" it!
  Rails.logger.error "Error in data ..."
end

我可以想出一个可以轻松做到这一点的课程。我想知道是否有其他人遇到过这个并有一个优雅的解决方案?

就最终结果而言,我最终不得不(视觉上)查看大量日志,这些日志只会占用空间,如果数据正常,那么日志就没用了。因此,从日志(输出/文件)中删除它们将节省空间和时间!

-丹尼尔

标签: ruby-on-railsrubylogging

解决方案


推荐阅读