Class: Pallets::Middleware::JobLogger

Inherits:
Object
  • Object
show all
Defined in:
lib/pallets/middleware/job_logger.rb

Class Method Summary collapse

Class Method Details

.call(worker, job, context) ⇒ Object



4
5
6
7
8
9
10
11
12
13
# File 'lib/pallets/middleware/job_logger.rb', line 4

def self.call(worker, job, context)
  Pallets.logger.info 'Started', (worker.id, job)
  result = yield
  Pallets.logger.info 'Done', (worker.id, job)
  result
rescue => ex
  Pallets.logger.warn "#{ex.class.name}: #{ex.message}", (worker.id, job)
  Pallets.logger.warn ex.backtrace.join("\n"), (worker.id, job) unless ex.backtrace.nil?
  raise
end

.extract_metadata(wid, job) ⇒ Object



15
16
17
18
19
20
21
22
23
# File 'lib/pallets/middleware/job_logger.rb', line 15

def self.(wid, job)
  {
    wid:  wid,
    wfid: job['wfid'],
    jid:  job['jid'],
    wf:   job['workflow_class'],
    tsk:  job['task_class'],
  }
end