Spec-Zone.ru › Ruby on Rails 7.1

модуль ActiveJob::Exceptions

Обеспечивает поведение для повторной попытки и отбрасывания задач при возникновении исключений.

Публичные методы экземпляров

retry_job(options = {}) Показать исходный код
# File activejob/lib/active_job/exceptions.rb, line 157
def retry_job(options = {})
  instrument :enqueue_retry, options.slice(:error, :wait) do
    enqueue options
  end
end

Перепланирует задачу для повторного выполнения. Это полезно в сочетании с rescue_from. Когда вы перехватываете исключение из своей задачи, вы можете попросить Active Job повторить выполнение вашей задачи.

Параметры

  • :wait - Запускает задачу с указанной задержкой в секундах

  • :wait_until - Запускает задачу в указанное время

  • :queue - Запускает задачу в указанной очереди

  • :priority - Запускает задачу с указанным приоритетом

Примеры

class SiteScraperJob < ActiveJob::Base
  rescue_from(ErrorLoadingSite) do
    retry_job queue: :low_priority
  end

  def perform(*args)
    # raise ErrorLoadingSite if cannot scrape
  end
end

© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API