module EXEL::ProcessorHelper

Helper methods useful to processors @deprecated Most functionality replaced by {EXEL::Middleware::Logging} middleware.

Public Class Methods

included(other) click to toggle source
# File lib/exel/processor_helper.rb, line 7
def self.included(other)
  warn "DEPRECATION WARNING: [#{other}] EXEL::ProcessorHelper will be removed. For process logging, please use "\
       'EXEL::Middleware::Logging instead'
end

Public Instance Methods

ensure_transaction_duration(duration, start_time) click to toggle source
# File lib/exel/processor_helper.rb, line 64
def ensure_transaction_duration(duration, start_time)
  elapsed_time = Time.now.to_f - start_time.to_f
  time_to_sleep = duration.second.to_f - elapsed_time
  sleep(time_to_sleep) if time_to_sleep.positive?
end
file_size_in_mb(file) click to toggle source
# File lib/exel/processor_helper.rb, line 20
def file_size_in_mb(file)
  format('%.2f MB', file.size.to_f / 1_024_000)
end
log(message) click to toggle source
# File lib/exel/processor_helper.rb, line 40
def log(message)
  "#{log_prefix} #{message}"
end
log_error(message) click to toggle source
# File lib/exel/processor_helper.rb, line 36
def log_error(message)
  EXEL.logger.error(log(message))
end
log_exception(message = '') { || ... } click to toggle source
# File lib/exel/processor_helper.rb, line 52
def log_exception(message = '')
  yield
rescue => e
  log_error "Exception: #{e.message.chomp} #{message}"
  log_error e.backtrace.join("\n")
  raise e
end
log_info(message) click to toggle source
# File lib/exel/processor_helper.rb, line 32
def log_info(message)
  EXEL.logger.info(log(message))
end
log_prefix() click to toggle source
# File lib/exel/processor_helper.rb, line 28
def log_prefix
  @log_prefix
end
log_prefix_with(prefix) click to toggle source
# File lib/exel/processor_helper.rb, line 24
def log_prefix_with(prefix)
  @log_prefix = (@context[:log_prefix] || '') + prefix
end
log_process(message = '') { || ... } click to toggle source
# File lib/exel/processor_helper.rb, line 60
def log_process(message = '')
  log_exception(message) { log_transaction(message) { yield } }
end
log_transaction(message = '') { |transaction_start_time| ... } click to toggle source
# File lib/exel/processor_helper.rb, line 44
def log_transaction(message = '')
  transaction_start_time = Time.now
  log_info "Started at #{transaction_start_time}"
  yield(transaction_start_time)
  transaction_end_time = Time.now
  log_info "Finished in #{(transaction_end_time - transaction_start_time).to_i} seconds #{message}"
end
tag(*tags) click to toggle source
# File lib/exel/processor_helper.rb, line 12
def tag(*tags)
  tags.map { |t| "[#{t}]" }.join('')
end
timestamp() click to toggle source
# File lib/exel/processor_helper.rb, line 16
def timestamp
  Time.now.strftime('%m/%e/%y %H:%M')
end