Я изо всех сил пытаюсь отправить приведенный ниже код в качестве фонового задания, время от времени сталкиваясь с той или иной ошибкой,
мое приложение / worker / brassring.rb имеет значение
require File.dirname(__FILE__)+"/base_parser"
class Brassring < BaseParser
@queue = :Brassring_queue
def self.perform(page)
super page
.............
end
site_done
rescue Exception => e
def self.perform
log "error: #{e}"
end
end
end
и мой app / worker / base_parser.rb равен
#require 'rubygems'
require 'mechanize'
require 'mechanize/form'
class BaseParser
def initialize(site)
......
end
def add_fields_to_form(form, fields)
.....
end
def run
.................
end
def html2text(data)
......
end
def save_result_page(url, result_params)
............
end
def get_fields_from_page(page)
.......
end
def set_site_status(status)
........
end
def update_run_counter
.......
end
def site_done
......
end
def log(what)
.....
end
def utf8(untrusted_string)
.......
end
Я ставлю это в очередь, используя метод Rescue_enqueue в моем lib / brassring.rb как
Resque.enqueue(Brassring,@site_id)
, когда я пытаюсьзапустите задание с помощью rake resque: work QUEUE = * Ошибка в моей панели управления спасением
NoMethodError Ошибка: неопределенный метод log' for Brassring:Class
/home/my/to/sorc/app/workers/brassring.rb:39:in
rescue in execute '/ home / my / to / sorc / app / worker/brassring.rb:5:in `выполнить '
или что я должен сделать, чтобы это заработало.
Заранее спасибо