Class: TQ::Logger

Inherits:
Object
  • Object
show all
Defined in:
lib/tq/logger.rb

Constant Summary collapse

DEFAULT_OPTIONS =
{ 
  'file'  =>  $stderr,
  'level' =>  ::Logger::WARN
}

Instance Method Summary collapse

Constructor Details

#initialize(queue, options = {}) ⇒ Logger

Returns a new instance of Logger.



13
14
15
16
17
18
19
20
# File 'lib/tq/logger.rb', line 13

def initialize(queue, options={})
  @queue = queue
  if Hash === options
    @log = build_log( DEFAULT_OPTIONS.merge(options) )
  else
    @log = options
  end
end

Instance Method Details

#add(severity, message = nil, progname = nil, context = nil, &block) ⇒ Object Also known as: log



38
39
40
41
42
43
44
45
46
47
48
# File 'lib/tq/logger.rb', line 38

def add(severity, message=nil, progname=nil, context=nil, &block)
  t = Time.now
  severity, message, data, context = 
    normalize_params(severity, message, progname, context, &block)

  @log.add(severity, message, data[:progname])
  @queue.push!( 
    queue_message(t, severity, message, data, context), 
    ::Logger::SEV_LABEL[severity].to_s.downcase
  ) if (severity >= level)
end

#levelObject



22
23
24
# File 'lib/tq/logger.rb', line 22

def level
  @log.level
end

#level=(severity) ⇒ Object



26
27
28
# File 'lib/tq/logger.rb', line 26

def level=(severity)
  @log.level = severity
end

#prognameObject



30
31
32
# File 'lib/tq/logger.rb', line 30

def progname
  @log.progname
end

#progname=(name) ⇒ Object



34
35
36
# File 'lib/tq/logger.rb', line 34

def progname=(name)
  @log.progname = name
end