Questions tagged «delayed-job»


13
如何使用rspec测试ActionMailerliver_later
尝试使用delay_job_active_record升级到Rails 4.2。我没有为测试环境设置delay_job后端,以为作业将立即执行。 我正在尝试使用Rspec测试新的'deliver_later'方法,但不确定如何。 旧控制器代码: ServiceMailer.delay.new_user(@user) 新的控制器代码: ServiceMailer.new_user(@user).deliver_later 我曾这样测试它: expect(ServiceMailer).to receive(:new_user).with(@user).and_return(double("mailer", :deliver => true)) 现在,我在使用它时遇到了错误。(双“ mailer”收到意外消息:带有(无参数)的deliver_later) 只是 expect(ServiceMailer).to receive(:new_user) 对于nil:NilClass,也使用“未定义的方法'deliver_later'”失败 我尝试了一些示例,这些示例使您可以查看是否使用ActiveJob中的test_helper将作业排入了队列,但我还没有设法测试排队的正确作业。 expect(enqueued_jobs.size).to eq(1) 如果包括test_helper,则通过,但不允许我检查它是否发送了正确的电子邮件。 我想做的是: 测试正确的电子邮件已排队(或在测试环境中立即执行) 具有正确的参数(@user) 有任何想法吗??谢谢

13
如何使用monit监视delayed_job
网络上是否有任何示例可用于监视Monit的delay_job? 我能找到的所有东西都使用上帝,但我拒绝使用上帝,因为Ruby中长时间运行的进程通常很烂。(上帝邮件列表中的最新帖子?上帝记忆的使用量稳步增长。) 更新: delay_job现在带有基于此问题的示例监视配置。

13
getaddrinfo:提供的节点名或服务名,或者未知
我有一个Ruby on Rails应用程序,正在部署在运行Mac OS X 10.6的计算机上。出现问题的代码是由delay_job运行的。仅当它通过delay_job运行时,才会出现此问题。如果我在控制台(rails console production)中运行它,或者直接通过cURL调用API,它就可以正常工作。而且,整个过程在我的开发环境中都可以正常工作。 基本上,代码在一个地方工作,但是由于某种原因,它在必须工作的地方失败。我已经搜索并找到了一些资源,但是没有任何建议适用或有所作为。当我登录服务器并运行命令时,一切正常。但是由于某些原因,当Capistrano运行/启动它们时,它不起作用。 任何帮助是极大的赞赏。 重要笔记: Ruby版本:1.9.2-p0 Rails版本:3.0.1 delay_job版本:最新(来自collectionidea / delayed_job) 其余客户端版本:1.6.1 码: class CallApi < Struct.new(:num) def perform log "Entering perform" apinum = num || 5 log "ApiNum = #{apinum}" results = attempt(2,10) do ActiveSupport::JSON.decode(RestClient.get(API_URL, {:params => {:apinum => apinum}})) end log "Results retrieved. …

9
在Delayed_job中手动重试作业
Delayed :: Job的自动重试功能很棒,但是现在有一项我想手动重试的工作。有没有一种方法可以像我这样调用工作本身? Delayed::Job.all[0].perform 或跑步或其他。我尝试了一些事情,并整理了文档,但是不知道如何执行作业的手动重试。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.