Module: ActiveLogger::Logging
- Defined in:
- lib/active_logger/logging.rb
Overview
:nodoc:
Class Method Summary collapse
Class Method Details
.new(*args, &block) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/active_logger/logging.rb', line 12 def new(*args, &block) # extract options = args.last.is_a?(Hash) ? args.pop : {} reset! self.formatter = .delete(:formatter) if [:formatter] self.level = .delete(:level) if [:level] self.progname = .delete(:progname) if [:progname] self.name = .delete(:name) if [:name] 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)) } logger = TaggedLogging.new(loggers) ActiveLogger::Repository[name] = logger unless autogenerated_name? logger end |