Copie para o snippet abaixo e cole em um console do Rails
def delete_if
redis = Resque.redis
(0...Resque::Failure.count).each do |i|
string = redis.lindex(:failed, i)
break if string.nil?
job = Resque.decode(string)
remove = yield job
next unless remove
redis.lrem(:failed, 1, string)
redo
end
end
Para excluir seletivamente um subconjunto de trabalhos com falha, digamos que exclua todos os trabalhos de notificação push que falharam devido a erros de http
delete_if do |job|
job['payload']['class'] == 'SendPushNotification' &&
job['exception'] == 'Pusher::HTTPError'
end
Aqui está um resumo do mesmo https://gist.github.com/nisanth074/11332107