Class: BmcDaemonLib::LoggerPool

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/bmc-daemon-lib/logger_pool.rb

Constant Summary collapse

LOG_ROTATION =
"daily"

Instance Method Summary collapse

Instance Method Details

#create(pipe) ⇒ Object



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/bmc-daemon-lib/logger_pool.rb', line 18

def create pipe
  # Compute logfile or STDERR, and declare what we're doing
  filename = logfile(pipe)

  # Create the logger and return it
  logger = Logger.new(filename, LOG_ROTATION)   #, 10, 1024000)
  logger.progname = pipe.to_s.downcase
  logger.formatter = LoggerFormatter

  # Finally return this logger
  logger

rescue Errno::EACCES
  log "create [#{pipe}]: access error"
end

#get(pipe = nil) ⇒ Object



11
12
13
14
15
16
# File 'lib/bmc-daemon-lib/logger_pool.rb', line 11

def get pipe = nil
  pipe = :default if pipe.to_s.empty?

  @loggers ||= {}
  @loggers[pipe] ||= create(pipe)
end