【问题标题】:See output from background task run with delayed_job查看使用 delay_job 运行的后台任务的输出
【发布时间】:2018-03-14 05:35:50
【问题描述】:

如果我为 delayed_job 启动后台工作程序,然后提交作业,作业会运行,但我看不到作业的任何终端输出。如何安排它以便我可以看到终端输出。我在开发模式下使用 ruby​​ on rails。

当我发出命令bin/delayed_job start时,我想这样做。

【问题讨论】:

标签: ruby-on-rails delayed-job


【解决方案1】:

根据 Gene 和 Shani 的建议,您可以通过添加来设置记录器

Delayed::Worker.logger = Logger.new(File.join(Rails.root, 'log', 'delayed_job.log'))

config/initializers/delayed_job_initializers.rb然后在运行过程中输出使用

Delayed::Worker.logger.debug("Log Entry")

然后使用查看输出

tail -f log/delayed_job.log.

【讨论】:

    【解决方案2】:

    您可以在 Rails 控制台上启动 worker。当我想调试延迟的工作时我会做什么

    worker = Delayed::Worker.new
    worker.start
    

    【讨论】:

    • 这可能很有用,但是作业的输出可以帮助我监控它的进度,所以我想在发出命令时执行此操作bin/delayed_job start
    • 这里列出的所有命令github.com/collectiveidea/delayed_job/wiki/…你可以按照上面用户的说明设置记录器,然后使用tail命令查看日志tail -f log/delayed_job.log
    猜你喜欢
    • 2020-02-25
    • 1970-01-01
    • 2011-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多