задание планировщика resque не запускается из-за ошибки метки времени - PullRequest
0 голосов
/ 06 сентября 2018
NoMethodError at /resque/stats/keys/timestamps:%7B  undefined method `>' for []:Array

- это ошибка, возникающая в результате создания ряда отложенных заданий с помощью resque и resque-scheduler и нажатия на одну из ссылок stats / keys (здесь внизу).
resqueue-scheduler В деталях ошибка sinatra.route GET /stats/keys/:key/? Я интерпретирую как отсутствие метки времени.

Эти задания генерируются с помощью действия контроллера, которое вызывает

Resque.enqueue_at(@time, DelayedMailer, @fg.id, @mailing.id)

для тестирования контроллер puts данные перед рукой, например:

2018-09-06 10:50:08 +0200  [@time]
9                          [@fg.id]
23                         [@mailing.id]

@ время генерируется через Time.now + целое число секунд. Затем класс заданий обрабатывает

class DelayedMailer
  @queue = :mail

  def self.perform(time, fg_id, mailing_id)
    fg = Fg.where('id = ?', fg_id).first
    mailing = Mailing.where('id = ?', mailing_id).first
    BasicMailer.contact(fg, mailing).deliver_now
  end

статистика по запросу "обработана = 0".
Таким образом, имеется ошибка, ориентировочно в метке времени (обработка или формат). Где ошибка и как ее можно исправить?

...