Class Logger
In: lib/inactive_support/clean_logger.rb
Parent: Object

Extensions to the built in Ruby logger.

If you want to use the default log formatter as defined in the Ruby core, then you will need to set the formatter for the logger as in:

  logger.formatter = Formatter.new

You can then specify the datetime format, for example:

  logger.datetime_format = "%Y-%m-%d"

Note: This logger is deprecated in favor of ActiveSupport::BufferedLogger

Methods

Classes and Modules

Class Logger::Formatter
Class Logger::SimpleFormatter

External Aliases

datetime_format= -> old_datetime_format=
datetime_format -> old_datetime_format
formatter -> old_formatter
format_message -> old_format_message
format_datetime -> old_format_datetime
msg2str -> old_msg2str

Public Instance methods

Get the logging datetime format. Returns nil if the formatter does not support datetime formatting.

[Source]

# File lib/inactive_support/clean_logger.rb, line 45
  def datetime_format
    formatter.datetime_format if formatter.respond_to?(:datetime_format)
  end

Logging date-time format (string passed to strftime). Ignored if the formatter does not respond to datetime_format=.

[Source]

# File lib/inactive_support/clean_logger.rb, line 38
  def datetime_format=(datetime_format)
    formatter.datetime_format = datetime_format if formatter.respond_to?(:datetime_format=)
  end

Get the current formatter. The default formatter is a SimpleFormatter which only displays the log message

[Source]

# File lib/inactive_support/clean_logger.rb, line 52
  def formatter
    @formatter ||= SimpleFormatter.new
  end

Silences the logger for the duration of the block.

[Source]

# File lib/inactive_support/clean_logger.rb, line 22
  def silence(temporary_level = Logger::ERROR)
    if silencer
      begin
        old_logger_level, self.level = level, temporary_level
        yield self
      ensure
        self.level = old_logger_level
      end
    else
      yield self
    end
  end

[Validate]