加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 登录Sidekiq工作人员

发布时间:2020-12-16 19:49:26 所属栏目:百科 来源:网络整理
导读:我正在尝试使用tail -f log / development.log记录我的sideqik工作进度,并在生产中记录英雄的日志. 但是,工作人员内部的所有内容和工作人员调用的内容都不会被记录.在下面的代码中,只有TEST 1被记录. 如何记录工作人员和工作人员所呼吁的课程内的所有内容?
我正在尝试使用tail -f log / development.log记录我的sideqik工作进度,并在生产中记录英雄的日志.

但是,工作人员内部的所有内容和工作人员调用的内容都不会被记录.在下面的代码中,只有TEST 1被记录.

如何记录工作人员和工作人员所呼吁的课程内的所有内容?

# app/controllers/TasksController.rb
def import_data
  Rails.logger.info "TEST 1" # shows up in development.log
  DataImportWorker.perform_async
  render "done"           
end

# app/workers/DataImportWorker.rb
class DataImportWorker
  include Sidekiq::Worker

  def perform    
    Rails.logger.info "TEST 2" # does not show up in development.log

    importer = Importer.new
    importer.import_data
  end
end


# app/controllers/services/Importer.rb    
class Importer  
  def import_data
    Rails.logger.info "TEST 3" # does not show up in development.log
  end
end

更新

我仍然不明白为什么Rails.logger.info或Sidekiq.logger.info不会登录到日志流.通过用put替换Rails.logger.info来实现它的工作.

解决方法

有一个Sidekiq.logger和简单的记录器参考,你可以在你的工作人员内使用.默认情况下应该是STDOUT,您应该将生产中的输出直接指向您选择的日志文件路径.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读