2012-01-10 16 views
23

Tôi không thể chạy web resque trên máy chủ do một số vấn đề mà tôi vẫn phải thực hiện nhưng tôi vẫn phải kiểm tra và thử lại các công việc không thành công trong hàng chờ.Kiểm tra và thử lại các công việc resque qua redis-cli

Có ai có kinh nghiệm về cách nhìn trộm hàng đợi công việc không thành công để xem lỗi là gì không và sau đó làm cách nào để thử lại bằng cách sử dụng dòng lệnh redis-cli?

cảm ơn,

+1

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

+0

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

Trả lời

57

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.

+0

Đừng quên rằng Resque cũng có một giao diện web có thể cấu hình dễ dàng để xem các lỗi và các dấu vết ngăn xếp của chúng. Xem https://github.com/resque/resque để biết thêm thông tin. –

+0

Để liệt kê tất cả các công việc thất bại, bạn có thể thực hiện việc này: 'Resque :: Failure.all (0,0)' –

Các vấn đề liên quan