Provides behavior for retrying and discarding jobs on exceptions.
# File activejob/lib/active_job/exceptions.rb, line 124 def retry_job(options = {}) instrument :enqueue_retry, options.slice(:error, :wait) do enqueue options end end
Reschedules the job to be re-executed. This is useful in combination with the rescue_from
option. When you rescue an exception from your job you can ask Active Job to retry performing your job.
:wait
- Enqueues the job with the specified delay in seconds
:wait_until
- Enqueues the job at the time specified
:queue
- Enqueues the job on the specified queue
:priority
- Enqueues the job with the specified 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.