运行作业以检查是否发送了邮件

时间:2016-02-20 15:33:58

标签: ruby-on-rails ruby ruby-on-rails-4 rails-activejob

我通过sidekiq发送邮件。

现在我必须运行一个工作来检查是否发送了邮件,因为我必须在成功发送邮件时调用方法。有什么方法可以在rails中执行此操作吗?

2 个答案:

答案 0 :(得分:1)

如果电子邮件发送成功,您可以在表中添加新属性

if UserMailer.delay.application_rejected(user)
  user.update_column(:email_status_rejected, true) # the email was sent to the job
end

答案 1 :(得分:0)

Sidekiq does not allow to check status of a particular job。这就是批次的用途。

请参阅此documentation of Batches。 它们可以在出现故障时提供详细信息,并且还可以使用简洁的回调方法。

编辑:如果您只想监控自己的工作,sidekiq为其提供了一个不错的网络界面:https://github.com/mperham/sidekiq/wiki/Monitoring#web-ui