han*_*mar 6 ruby-on-rails sidekiq rails-activejob
我正在使用 Sidekiq 来完成一些后台工作。我还尝试将这些作业中的一些消息记录到日志文件中,但我一直无法完成这个简单的任务。
我正在运行的工作类型示例
class TestJob < ApplicationJob
queue_as :default
def perform
text = 'Print me to a file!'
Rails.logger.error "Rails.logger.info : #{text}"
logger.error "logger.info : #{text}"
end
end
Run Code Online (Sandbox Code Playgroud)
TestJob.perform_now例如,在控制器操作中运行,按预期工作,将消息打印到服务器终端输出,以及logs/development.log.
但是运行TestJob.perform_later不会打印我的消息。任何地方。不是Sidekiq终端,服务器终端,日志文件,什么都没有。
我尝试按照Sidekiq Logging wiki中的建议重定向日志。但是消息也没有打印在那里。
我觉得我可能错过了一些关键的东西。
尝试调用Sidekiq.logger,如下所示:
Sidekiq.logger.error "logger.info : #{text}"
Run Code Online (Sandbox Code Playgroud)
将“logger.info”放入错误日志中可能有点奇怪,但我只是从问题中发布的示例中获取。
| 归档时间: |
|
| 查看次数: |
1478 次 |
| 最近记录: |