Module: LogStruct::Builders::ActiveJob
- Extended by:
- T::Sig
- Defined in:
- lib/log_struct/builders/active_job.rb
Class Method Summary collapse
- .enqueue(job) ⇒ Log::ActiveJob::Enqueue
- .finish(job, duration_ms:, finished_at:) ⇒ Log::ActiveJob::Finish
- .safe_arguments(job) ⇒ Array<T.untyped>?
- .safe_executions(job) ⇒ Integer?
- .safe_provider_job_id(job) ⇒ String?
- .schedule(job, scheduled_at:) ⇒ Log::ActiveJob::Schedule
- .start(job, started_at:, attempt:) ⇒ Log::ActiveJob::Start
Class Method Details
.enqueue(job) ⇒ Log::ActiveJob::Enqueue
31 32 33 34 35 36 37 38 39 40 |
# File 'lib/log_struct/builders/active_job.rb', line 31 def self.enqueue(job) Log::ActiveJob::Enqueue.new( job_id: job.job_id, job_class: job.class.to_s, queue_name: job.queue_name, arguments: safe_arguments(job), executions: safe_executions(job), provider_job_id: safe_provider_job_id(job) ) end |
.finish(job, duration_ms:, finished_at:) ⇒ Log::ActiveJob::Finish
70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/log_struct/builders/active_job.rb', line 70 def self.finish(job, duration_ms:, finished_at:) Log::ActiveJob::Finish.new( job_id: job.job_id, job_class: job.class.to_s, queue_name: job.queue_name, arguments: safe_arguments(job), executions: safe_executions(job), provider_job_id: safe_provider_job_id(job), duration_ms: duration_ms, finished_at: finished_at ) end |
.safe_arguments(job) ⇒ Array<T.untyped>?
25 26 27 28 |
# File 'lib/log_struct/builders/active_job.rb', line 25 def self.safe_arguments(job) return nil unless job.class.respond_to?(:log_arguments?) job.class.log_arguments? ? job.arguments : nil end |
.safe_executions(job) ⇒ Integer?
20 21 22 |
# File 'lib/log_struct/builders/active_job.rb', line 20 def self.safe_executions(job) job.respond_to?(:executions) ? job.executions : nil end |
.safe_provider_job_id(job) ⇒ String?
15 16 17 |
# File 'lib/log_struct/builders/active_job.rb', line 15 def self.safe_provider_job_id(job) job.respond_to?(:provider_job_id) ? job.provider_job_id : nil end |
.schedule(job, scheduled_at:) ⇒ Log::ActiveJob::Schedule
43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/log_struct/builders/active_job.rb', line 43 def self.schedule(job, scheduled_at:) Log::ActiveJob::Schedule.new( job_id: job.job_id, job_class: job.class.to_s, queue_name: job.queue_name, arguments: safe_arguments(job), executions: safe_executions(job), provider_job_id: safe_provider_job_id(job), scheduled_at: scheduled_at ) end |
.start(job, started_at:, attempt:) ⇒ Log::ActiveJob::Start
56 57 58 59 60 61 62 63 64 65 66 67 |
# File 'lib/log_struct/builders/active_job.rb', line 56 def self.start(job, started_at:, attempt:) Log::ActiveJob::Start.new( job_id: job.job_id, job_class: job.class.to_s, queue_name: job.queue_name, arguments: safe_arguments(job), executions: safe_executions(job), provider_job_id: safe_provider_job_id(job), started_at: started_at, attempt: attempt ) end |