модуль ActiveJob::Exceptions
Предоставляет поведение для повторной попытки и отбрасывания задач при исключениях.
Открытые методы экземпляра
# File activejob/lib/active_job/exceptions.rb, line 117
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–2019 David Heinemeier Hansson
Licensed under the MIT License.