| Class | MCollective::Logger::File_logger |
| In: |
lib/mcollective/logger/file_logger.rb
|
| Parent: | Base |
Impliments a file based logger using the standard ruby logger class
To configure you should set:
- config.logfile - config.keeplogs defaults to 2097152 - config.max_log_size defaults to 5
# File lib/mcollective/logger/file_logger.rb, line 37
37: def log(level, from, msg)
38: @logger.add(map_level(level)) { "#{from} #{msg}" }
39: rescue
40: # if this fails we probably cant show the user output at all,
41: # STDERR it as last resort
42: STDERR.puts("#{level}: #{msg}")
43: end
# File lib/mcollective/logger/file_logger.rb, line 22
22: def set_logging_level(level)
23: @logger.level = map_level(level)
24: rescue Exception => e
25: @logger.level = ::Logger::DEBUG
26: log(:error, "", "Could not set logging to #{level} using debug instead: #{e.class} #{e}")
27: end
# File lib/mcollective/logger/file_logger.rb, line 13
13: def start
14: config = Config.instance
15:
16: @logger = ::Logger.new(config.logfile, config.keeplogs, config.max_log_size)
17: @logger.formatter = ::Logger::Formatter.new
18:
19: set_level(config.loglevel.to_sym)
20: end