我正在尝试记录我的 sideqik 工人tail -f log/development.log
在开发和heroku logs
生产中使用的进度。
但是,工作人员内部的所有内容以及工作人员调用的所有内容都不会被记录下来。在下面的代码中,只记录了 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
不登录日志流。通过替换Rails.logger.info
为puts
.