Sidekiqのジョブを削除する [Rails]
ローカル環境で溜まってしまった無駄なジョブにサヨナラする方法です。
- 処理待ちジョブ確認
- 処理待ちジョブ1件削除
- 処理待ちジョブ全件削除
- リトライ待ちジョブ確認
- リトライ待ちジョブ1件削除
- リトライ待ちジョブ全件削除
- とりあえず全部削除
の7本立て
処理待ちジョブの確認
require 'sidekiq/api' Sidekiq::Queue.new.each { |job| puts [job.jid, job.klass, job.args].join("\t") }
処理待ちジョブ1件削除
require 'sidekiq/api' Sidekiq::Queue.new.find_job(<job id>).delete
処理待ちジョブ全件削除
require 'sidekiq/api' Sidekiq::Queue.new.clear
リトライ待ちジョブ確認
require 'sidekiq/api' Sidekiq::RetrySet.new.each { |job| puts [job.jid, job.klass, job.args].join("\t") }
リトライ待ちジョブ1件削除
require 'sidekiq/api' Sidekiq::RetrySet.new.find_job('job_id /JID').delete
リトライ待ちジョブ全件削除
require 'sidekiq/api' Sidekiq::RetrySet.new.clear
とりあえず全部削除
require 'sidekiq/api' # 処理待ちジョブ削除 Sidekiq::Queue.new.clear # リトライ待ちジョブ削除 Sidekiq::RetrySet.new.clear