Resque taks не отправляет электронные письма через mandrill - PullRequest
0 голосов
/ 01 мая 2020

Вот мой rescue-scheduler.yml

SendPerformanceDetails:
  every:
    - 60s
    - :first_in: 1s
  class: "SendPerformanceDetails"
  queue: performance_details
  args:
  description: "Send performance details to users"

Вот класс send_performance_details :

class SendPerformanceDetails
  @queue = :performance_details

  def self.perform
    Resque.logger.info "Starting 'sending performance details to '"
    result = `RAILS_ENV=development rake emails:send_performance_details`
    Resque.logger.info result
    Resque.logger.info "Performance details sent to users"
  end
end

Задача выполняется без ошибок и успешно завершается , Но письмо не отправлено. Если я вручную запускаю грабли, приложение отправляет электронное письмо. Что я делаю не так?

Обновление: - Я только что заметил, что задача при запуске по планировщику запускается в тестовой среде. Я понятия не имею, почему ..

Кроме того, я должен вручную поставить в очередь запланированную задачу в веб-интерфейсе resque. Разве это не должно быть поставлено в очередь автоматически. В противном случае, rescue_log просто показывает эти строки снова и снова:

resque-2.0.0: Waiting for performance_details
D, [2020-05-01T16:34:37.585857 #11039] DEBUG -- : Checking performance_details
D, [2020-05-01T16:34:37.586846 #11039] DEBUG -- : Sleeping for 5.0 seconds
D, [2020-05-01T16:34:37.587613 #11039] DEBUG -- : resque-2.0.0: Waiting for performance_details
D, [2020-05-01T16:34:42.588857 #11039] DEBUG -- : Checking performance_details
D, [2020-05-01T16:34:42.589710 #11039] DEBUG -- : Sleeping for 5.0 seconds
D, [2020-05-01T16:34:42.590617 #11039] DEBUG -- : resque-2.0.0: Waiting for performance_details
D, [2020-05-01T16:34:47.591393 #11039] DEBUG -- : Checking performance_details

1 Ответ

0 голосов
/ 02 мая 2020

Оказывается, одной из задач граблей предыдущего разработчика была ручная настройка RAILS_ENV для тестирования. Комментирование строки пока решило проблему.

...