ruby-on-rails – 如何禁用耙机任务的日志记录?

我有一个耙子任务,每天一次作为一个cron工作.它对当前有57k条记录的模型执行一些维护.每次任务运行时,它会在日志中增加数十万条线路,无论目前处于哪个环境(目前正在开发中).

如何为特定的耙子任务或一组任务禁用日志记录,但是为应用程序的其余部分留下日志记录,并将其单独留在从任务调用的模型/方法中?

Rails记录器是一个ActiveSupport :: BufferedLogger对象,但可以重新分配给任何其他类型的Logger对象(或响应Logger方法的任何对象),包括以下内容:

dev_null = Logger.new("/dev/null")
Rails.logger = dev_null
ActiveRecord::Base.logger = dev_null

将这些行放在您的Rake任务的顶部,并且所有日志输出将被低成本地发送到/ dev / null,这最好由其Wikipedia文章解释.

相关文章
相关标签/搜索