Tìm thấy một giải pháp vào liên kết sau:
http://ariejan.net/2010/08/23/resque-how-to-requeue-failed-jobs
Trong ray console chúng ta có thể sử dụng các lệnh này để kiểm tra và thử việc thất bại:
1 - Nhận số công việc thất bại:
Resque::Failure.count
2 - Kiểm tra lỗi ngoại lệ của lớp và backtrace
Resque::Failure.all(0,20).each { |job|
puts "#{job["exception"]} #{job["backtrace"]}"
}
Đối tượng công việc là một băm với thông tin về công việc thất bại. Bạn có thể kiểm tra nó để kiểm tra thêm thông tin. Cũng lưu ý rằng điều này chỉ liệt kê 20 công việc thất bại đầu tiên. Không chắc chắn làm thế nào để liệt kê tất cả, do đó bạn sẽ phải thay đổi các giá trị (0, 20) để có được toàn bộ danh sách.
3 - Thử lại tất cả các công việc thất bại:
(Resque::Failure.count-1).downto(0).each { |i| Resque::Failure.requeue(i) }
4 - Thiết lập lại các công việc thất bại đếm:
Resque::Failure.clear
thử lại tất cả các công việc không reset bộ đếm. Chúng ta phải xóa nó để nó đi đến số không.
Sẽ đơn giản hơn khi sử dụng bảng điều khiển ruby để thực hiện điều đó vì Resque có tất cả các loại trình trợ giúp. Tại sao bạn muốn làm điều đó trực tiếp trong redis-cli? – marcgg
Cảm ơn, đã giải quyết được sự cố của tôi khi sử dụng bảng điều khiển đường ray như bạn đã đề xuất. – Horacio