Module: ActiveLogger::Logger
- Defined in:
- lib/active_logger/logger.rb
Overview
:nodoc:
Defined Under Namespace
Classes: AppenderNotFound, FilenameNotSpecified
Class Method Summary collapse
Class Method Details
.loggable(type, options = {}) ⇒ Object
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/active_logger/logger.rb', line 36 def loggable(type, = {}) parameters = [] case type when :stdout, STDOUT parameters << STDOUT when :stderr, STDERR parameters << STDERR when String, Pathname parameters = [type.to_s, [:keep], [:size]] when :file raise FilenameNotSpecified if [:filename].nil? parameters = [[:filename], [:keep], [:size]] else raise AppenderNotFound end logger = ActiveSupport::Logger.new(*parameters) logger.level = level logger.formatter = formatter logger end |
.new(*args, &block) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/active_logger/logger.rb', line 15 def new(*args, &block) # extract options = args.last.is_a?(Hash) ? args.pop : {} reset! self.formatter = [:formatter] unless [:formatter].nil? self.level = [:level] unless [:level].nil? if block_given? block.arity.positive? ? block.call(self) : instance_eval(&block) else type = args.first appender(type, ) end assign_appenders = appenders.drop(1) loggers = assign_appenders.inject(appenders[0]) { |appender, acc| acc.extend(ActiveSupport::Logger.broadcast(appender)) } TaggedLogging.new(loggers) end |