普段Railsでキューライブラリでいうとsidekiqを使っている
Job自体はRails4.2から入ったActiveJobを使っている
# app/jobs/application_job.rb class ApplicationJob < ActiveJob::Base end # app/jobs/sample_job.rb class SampleJob < ApplicationJob queue_as :default def perform Rails.logger.info('sample') end end
今回はこのjobの中でuuidをもたせて処理をしたかった
uuidをもたせるなら SecureRandom.uuid
とjob内にかければ終わりだがそもそもActiveJobが自分にjob_idというuuidを保持していた
rails/core.rb at fe1f4b2ad56f010a4e9b93d547d63a15953d9dc2 · rails/rails · GitHub
よって下記のようにすれば終わり
# app/jobs/sample_job.rb class SampleJob < ApplicationJob queue_as :default def perform Rails.logger.info("uuid is #{job_id}") end end