Ruby on rails 延迟的作业无法正常工作

Ruby on rails 延迟的作业无法正常工作,ruby-on-rails,delayed-job,Ruby On Rails,Delayed Job,我实现了延迟作业&它处理得很好,但它在development.log中生成邮件,而不是在production.log中 此外,实际上没有发送邮件,它只是在开发日志中生成。处理后,我在延迟作业表中也没有作业 我还使用了RAILS\u ENV=production-rake-jobs:work,但邮件仍然在开发日志中,并且没有实际发送;我使用Ubuntu上的邮件服务器发送邮件 我注意到,默认情况下,rake jobs:work使用开发日志,但不知道生产服务器的日志也一样吗 如果有人知道这个问题,请尽

我实现了延迟作业&它处理得很好,但它在development.log中生成邮件,而不是在production.log中

此外,实际上没有发送邮件,它只是在开发日志中生成。处理后,我在延迟作业表中也没有作业

我还使用了
RAILS\u ENV=production-rake-jobs:work
,但邮件仍然在开发日志中,并且没有实际发送;我使用Ubuntu上的邮件服务器发送邮件

我注意到,默认情况下,
rake jobs:work
使用开发日志,但不知道生产服务器的日志也一样吗


如果有人知道这个问题,请尽快回答,因为我的应用程序因此在生产服务器上被卡住了,很多邮件只是进入开发日志,而不是真正发送给最终用户。

这可能很明显,但在您的config/production.rb中,您设置了吗

    config.action_mailer.delivery_method = :smtp

您可以在config/development.rb中设置交付方法,但忘记在生产环境中执行相同的操作。请让我知道,这样我可以进一步帮助

在文件
config/initializers/Delayed_job.rb
中添加
Delayed::Worker.destroy_failed_jobs=false
,然后重新启动应用程序/服务器。设置不会删除任何有错误的作业,这可能有助于缩小问题范围。要查找有错误的作业:
从延迟的作业中选择id、last\u error,其中last\u error不为null。您不应该在生产中使用
rake jobs:work
。我正在使用RAILS\u ENV=production rake jobs:work,但在这之后,邮件只在开发日志中,实际上并没有发送给接收者