15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# File 'lib/punk/framework/worker.rb', line 15
def perform(kwargs={})
@_started = Time.now.utc
logger.info "Started #{self.class.name}", kwargs.sanitize.inspect
logger.push_tags(self.class.name)
_init_runnable(kwargs.deep_symbolize_keys)
raise BadRequest, "validation failed" unless valid?
process
nil
rescue BadRequest => e
logger.error e.message
logger.error errors.full_messages.to_sentence
raise
ensure
duration = 1000.0 * (Time.now.utc - @_started)
logger.pop_tags
logger.info message: "Completed #{self.class.name}", duration: duration
SemanticLogger.flush
end
|