command line - keys - Inspeccione y reintente los trabajos de resque a través de redis-cli
redis-cli list keys (1)
No puedo ejecutar resque-web en mi servidor debido a algunos problemas en los que todavía tengo que trabajar, pero todavía tengo que revisar y volver a intentar los trabajos fallidos en mis colas de resque.
¿Alguien tiene experiencia en cómo echar un vistazo a la cola de trabajos fallidos para ver cuál fue el error y luego cómo reintentarlo utilizando la línea de comandos redis-cli?
Gracias,
Encontré una solución en el siguiente enlace:
http://ariejan.net/2010/08/23/resque-how-to-requeue-failed-jobs
En la consola de Rails podemos usar estos comandos para verificar y reintentar trabajos fallidos:
1 - Obtenga el número de trabajos fallidos:
Resque::Failure.count
2 - Verifique la clase de excepción de errores y el backtrace
Resque::Failure.all(0,20).each { |job|
puts "#{job["exception"]} #{job["backtrace"]}"
}
El objeto de trabajo es un hash con información sobre el trabajo fallido. Puede inspeccionarlo para verificar más información. También tenga en cuenta que esto solo enumera los primeros 20 trabajos fallidos. No estoy seguro de cómo listarlos a todos, así que tendrá que variar los valores (0, 20) para obtener la lista completa.
3 - Reintentar todos los trabajos fallidos:
(Resque::Failure.count-1).downto(0).each { |i| Resque::Failure.requeue(i) }
4 - Restablecer el recuento de trabajos fallidos:
Resque::Failure.clear
Reintentar todos los trabajos no restablece el contador. Hay que borrarlo para que vaya a cero.