Module: LogSwitch::InstanceMethods

Defined in:
lib/log_switch.rb

Instance Method Summary collapse

Instance Method Details

#log(message, level = nil) ⇒ Object

Logs a message using the level provided. If no level provided, use @log_level.

Parameters:

  • message (String)

    The message to log.

  • level (Symbol) (defaults to: nil)

    The log level to send to your Logger.



120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'lib/log_switch.rb', line 120

def log(message, level=nil)
  level ||= self.class.default_log_level

  self.class.before_log.call
  yield if block_given?

  if self.class.logging_enabled?
    if message.respond_to? :each_line
      message.each_line do |line|
        msg = filter_class_name(line.chomp)
        logger.send(level, msg)
      end
    else
      message = filter_class_name(message)
      logger.send(level, message)
    end
  end
end

#loggerObject



111
112
113
# File 'lib/log_switch.rb', line 111

def logger
  self.class.logger
end