Trabajos de Sidekiq atascados en enqueue


Sidekiq ha estado trabajando en modo de desarrollo perfectamente. Ahora que estoy tratando de usarlo en la producción, todos los trabajos están simplemente sentados en enqueue y nunca se están ejecutando. ¿Alguien podría indicarme en la dirección correcta en cuanto a cómo resolver este problema?

Author: groffcole, 2013-06-20

5 answers

Compruebe si el proceso sidekiq se está ejecutando:

ps aux | grep sidekiq

Si no lo es, intente ejecutar sidekiq en primer plano y verifique la salida.

bundle exec sidekiq -e production
 30
Author: cthulhu,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-06-20 18:08:34

Esta respuesta parece relevante: Sidekiq no procesando cola Si Sidekiq no es informado sobre el archivo de configuración (que puede requerir un encantamiento diferente en la producción), entonces puede que no esté usando la cola correcta.

 2
Author: ChrisPhoenix,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:02:16

Mi solución:

1.) Mira el Sidekiq Web UI para tu aplicación (aquí es donde puedes ver el hecho de que los trabajos están entrando en un estado enquiciado).

2.) Reintentar manualmente un trabajo fallido

3.) Inspeccionar los registros en el servidor que ejecuta Sidekiq:

(generalmente aquí es donde se ubicará el registro, si dice que está haciendo esto en la puesta en escena)

tail -f /var/www/yourappname/current/log/staging.log

Esto es generalmente donde verá un mensaje de error más detallado de por qué Sidekiq no puede procesar trabajos enqueados. En nuestro caso, había una variable de entorno que apuntaba a un punto final incorrecto específico para nuestra configuración de implementación.

 1
Author: Joseph Combs,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-09-15 22:07:14

En muchos casos para mí es porque no he declarado correctamente la cola para este servicio específico en config/sidekiq.yml.

 1
Author: paascal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-01-04 12:24:55

Solo un aviso a todos cuando terminé esta página tratando de averiguar por qué mis trabajos de Rails Sidkiq no se movían de 'enqueued'.

  1. Compruebe su consola sidekiq en su terminal
  2. Mi problema que me arruinó durante casi una hora... duh... Tenía un punto de interrupción 'byebug' en el código que es tonto poner en un trabajo en segundo plano. Esto arruinará totalmente tu trabajo. Obviamente... No quise poner ese punto de interrupción allí. Lo juro:)
 0
Author: slindsey3000,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-09-28 13:29:43