Module: Delayed::Logging

Included in:
Pool, WorkQueue::ParentProcess::Client, WorkQueue::ParentProcess::Server, Worker
Defined in:
lib/delayed/logging.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.log_job(job, format = :short) ⇒ Object



27
28
29
30
31
32
33
34
35
36
# File 'lib/delayed/logging.rb', line 27

def self.log_job(job, format = :short)
  id_format = job.id ? " (id=#{job.id})" : ""

  case format
  when :long
    "#{job.full_name}#{id_format} #{Settings.job_detailed_log_format.call(job)}"
  else
    "#{job.full_name}#{id_format} #{Settings.job_short_log_format.call(job)}".strip
  end
end

.loggerObject



13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/delayed/logging.rb', line 13

def self.logger
  return @logger if @logger

  @logger = if defined?(Rails.logger) && Rails.logger
              Rails.logger
            else
              ::Logger.new($stdout).tap do |logger|
                logger.formatter = lambda { |_, time, _, msg|
                  format(FORMAT, time.strftime(TIMESTAMP_FORMAT), msg)
                }
              end
            end
end

Instance Method Details

#say(message, level = :debug) ⇒ Object



41
42
43
# File 'lib/delayed/logging.rb', line 41

def say(message, level = :debug)
  logger.send(level, message)
end