Note that there are some explanatory texts on larger screens.

plurals
  1. PORails delayed job not working
    primarykey
    data
    text
    <p>My delayed job is not working. I am trying to create an background task for a rake file using a delayed job that should run every 15 minute. I have copied my rake tasks in my rake file and set them in my controller as methods. I need an delayed job because heroku only makes a cron every 1 hour. </p> <p>Here is my Application controller:</p> <pre><code>class ApplicationController &lt; ActionController::Base require 'delayed_job' require 'Mechanize' require 'pp' protect_from_forgery def iqmedier agent = WWW::Mechanize.new agent.get("http://www.iqmedier.dk") form = agent.page.forms.first form.submit agent.page.link_with(:href =&gt; "/Publisher/Stats").click form = agent.page.forms.first form.submit @stats = agent.page.search('//tr')[-2] @existing = Reklamer.find(:first, :conditions =&gt; {:dato =&gt; @stats[0]}) if @existing.nil? Reklamer.create!(:virksomhed =&gt; 'Iqmedier', :dato =&gt; @stats[0], :unik_klik =&gt; @stats[1], :klik =&gt; @stats[2], :unik_vis =&gt; @stats[3], :vis =&gt; @stats[4], :leads =&gt; @stats[5], :ordre =&gt; @stats[6], :cpc =&gt; @stats[7], :earn =&gt; @stats[8]) elsif @existing.dato != Date.today Reklamer.create!(:virksomhed =&gt; 'Iqmedier', :dato =&gt; Date.today, :unik_klik =&gt; 0, :klik =&gt; 0, :unik_vis =&gt; 0, :vis =&gt; 0, :leads =&gt; 0, :ordre =&gt; 0, :cpc =&gt; 0, :earn =&gt; 0) else @existing.update_attributes!(:unik_klik =&gt; @stats[1], :klik =&gt; @stats[2].to_i, :unik_vis =&gt; @stats[3], :vis =&gt; @stats[4], :leads =&gt; @stats[5], :ordre =&gt; @stats[6], :cpc =&gt; @stats[7], :earn =&gt; @stats[8]) end end def euroads agent = Mechanize.new { |agent| agent.user_agent_alias = 'Mac Safari'} agent.get("http://www.euroads.dk") form = agent.page.forms.first form.submit @month = Date.today.strftime("%m").to_s agent.get("http://www.euroads.dk/system/index.php?showpage=showstat&amp;show=overview&amp;month=#{@month}&amp;year0=2011&amp;day=1&amp;month=#{@month}&amp;year=2011&amp;day1=31&amp;month1=#{@month}&amp;year1=2011&amp;fk_campaign=&amp;fk_survey=&amp;fk_track=&amp;fk_pool=&amp;columns1=1&amp;columns2=2&amp;columns4=4&amp;columns14=14&amp;columns5=5&amp;columns6=6&amp;columns7=7&amp;columns8=8&amp;columns9=9") @stats = agent.page.search('table.ea').search('tr') @existing = Reklamer.find(:first, :conditions =&gt; {:dato =&gt; @stats[0]}) if @existing.nil? Reklamer.create!(:virksomhed =&gt; 'Euroads', :dato =&gt; @stats[0], :unik_klik =&gt; @stats[1], :klik =&gt; @stats[2].to_i, :unik_vis =&gt; @stats[3], :vis =&gt; @stats[4], :leads =&gt; @stats[5], :ordre =&gt; @stats[6], :cpc =&gt; @stats[7], :earn =&gt; @stats[8]) elsif @existing.dato != Date.today Reklamer.create!(:virksomhed =&gt; 'Euroads', :dato =&gt; Date.today, :unik_klik =&gt; 0, :klik =&gt; 0, :unik_vis =&gt; 0, :vis =&gt; 0, :leads =&gt; 0, :ordre =&gt; 0, :cpc =&gt; 0, :earn =&gt; 0) else @existing.update_attributes(:unik_klik =&gt; @stats[1], :klik =&gt; @stats[2].to_i, :unik_vis =&gt; @stats[3], :vis =&gt; @stats[4], :leads =&gt; @stats[5], :ordre =&gt; @stats[6], :cpc =&gt; @stats[7], :earn =&gt; @stats[8]) end end def mikkelsen agent = Mechanize.new agent.get("http://affilate.mikkelsenmedia.dk/partnersystem/mylogins.php") form = agent.page.forms.first @stats = agent.page.search('//tr') @existing = Reklamer.find(:first, :conditions =&gt; {:dato =&gt; @stats[0] }) if @existing.nil? Reklamer.create!(:virksomhed =&gt; 'Mikkelsen', :dato =&gt; @stats[0], :unik_klik =&gt; @stats[3], :klik =&gt; @stats[3].to_i, :unik_vis =&gt; @stats[1], :vis =&gt; @stats[1], :leads =&gt; @stats[4], :ordre =&gt; @stats[9], :cpc =&gt; @stats[3], :earn =&gt; @stats[5]) else @existing.update_attributes(:virksomhed =&gt; 'Mikkelsen', :dato =&gt; @stats[0], :unik_klik =&gt; @stats[3], :klik =&gt; @stats[3].to_i, :unik_vis =&gt; @stats[1], :vis =&gt; @stats[1], :leads =&gt; @stats[4], :ordre =&gt; @stats[9], :cpc =&gt; @stats[3], :earn =&gt; @stats[5]) end end def orville agent = WWW::Mechanize.new agent.get("https://dk.orvillemedia.com") form = agent.page.forms.first form.submit @dato = Date.today.strftime("%Y-%m-%d").to_s @month = Date.today.strftime("%m").to_s @day = Date.today.strftime("%d").to_s @stats = agent.page.search('//tr') @existing = Reklamer.find(:first, :conditions =&gt; {:dato =&gt; @dato}) if @existing.nil? Reklamer.create!(:virksomhed =&gt; 'Orville', :dato =&gt; @dato, :unik_klik =&gt; @stats[2], :klik =&gt; @stats[2].to_i, :unik_vis =&gt; @stats[1], :vis =&gt; @stats[1], :leads =&gt; @stats[3], :ordre =&gt; '0', :cpc =&gt; (@stats[5] == '-' ? 0 : @stats[3]), :earn =&gt; @stats[6]) else @existing.update_attributes(:virksomhed =&gt; 'Orville', :dato =&gt; Date.today, :unik_klik =&gt; @stats[2], :klik =&gt; @stats[2].to_i, :unik_vis =&gt; @stats[1], :vis =&gt; @stats[1], :leads =&gt; @stats[3], :ordre =&gt; '0', :cpc =&gt; (@stats[5] == '-' ? 0 : @stats[3]), :earn =&gt; @stats[6]) end end def runall [:iqmedier, :euroads, :mikkelsen, :orville].each{|a| send(a)} end handle_asynchronously :runall, :run_at =&gt; Proc.new { 5.minutes.from_now } </code></pre> <p>When I run rake jobs:work it starts but is not working the runall job of</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload