class ProcessManager::Log::Logger

Attributes

logger[RW]

Public Class Methods

new(log_device) click to toggle source

Initializes a logger that will roll log files every hour and keeps a week’s worth of logs in the disk. The log layout represents, “ISO8601_format_date log_level [program_name(pid)]: actual_log_message” Note: Rolling file appender only works with regular files

# File vendor/gems/process_manager/lib/process_manager/log.rb, line 23
def initialize(log_device)
  @logger = Logging.logger[ProcessManager::Config.config[:program_name]]
  @logger.add_appenders(
    Logging.appenders.rolling_file('rolling_file_appender',
      :filename => log_device,
      :age => 'daily',
      :keep => 7,
      :layout => Logging.layouts.pattern(:pattern => '%d %-5l [%c(%p)]: %m\n')
    )
  )
  if ProcessManager::Config.config[:verbose]
    self.level = 'debug'
  else
    self.level = 'info'
  end
end

Public Instance Methods

level=(level) click to toggle source
# File vendor/gems/process_manager/lib/process_manager/log.rb, line 40
def level=(level)
  if level.is_a?(Fixnum)
    @logger.level = level
  else
    @logger.level = ::Logger.const_get(level.to_s.upcase)
  end
end