rails perform now job delayed_job_active_record active ruby-on-rails ruby logging delayed-job clockwork

ruby-on-rails - perform - rails delayed_job_active_record



Iniciando sesión en delayyed_job? (1)

Cuando necesitaba la salida de registro de Trabajos diferidos, encontré esta pregunta bastante útil.

En config/initializers/delayed_job.rb agrego la línea:

Delayed::Worker.logger = Logger.new(File.join(Rails.root, ''log'', ''dj.log''))

Luego, en mi trabajo, salgo a este registro con:

Delayed::Worker.logger.debug("Log Entry")

Esto da como resultado el log/dj.log del archivo log/dj.log . Esto funciona en entornos de desarrollo, puesta en escena y producción.

No puedo obtener ningún resultado de registro de delayed_job , y no estoy seguro de que mis trabajos estén comenzando.

Aquí está mi archivo de registro:

web: bundle exec rails server worker: bundle exec rake jobs:work worker: bundle exec clockwork app/clock.rb

Y aquí está el trabajo:

class ScanningJob def perform logger.info "logging from delayed_job" end def after(job) Rails.logger.info "logging from after delayed_job" end end

Veo que las salidas del mecanismo de salida del sistema, y ​​puedo ver que el ejecutor del trabajador está comenzando, pero nunca veo que lleguen mis instrucciones de registro. Intenté puts también en vano.

Mi archivo de reloj es bastante simple:

every(3.seconds, ''refreshlistings'') { Delayed::Job.enqueue ScanningJob.new }

Solo quiero ver que esto funcione, y la falta de registro significa que no puedo. ¿Que está pasando aqui?