module Padrino::Logger::Extensions

def bench(action, began_at, message, level=:debug, color=:yellow)

Parameters:
  • string (message) --
  • time (float) --
  • action (string) --
def bench(action, began_at, message, level=:debug, color=:yellow)
  @_pad  ||= 8
  @_pad    = action.to_s.size if action.to_s.size > @_pad
  duration = Time.now - began_at
  color    = :red if duration > 1
  action   = colorize(action.to_s.upcase.rjust(@_pad), color)
  duration = colorize('%0.4fs' % duration, :bold, color)
  push "#{action} (#{duration}) #{message}", level
end

def colorize(string, *colors)

Parameters:
  • (Array) --
  • (string) --

Other tags:
    See: -
def colorize(string, *colors)
  string
end

def colorize!

Padrino.logger.debug("Fancy Padrino debug string")
Padrino.logger.colorize!
Padrino.logger = Logger.new($stdout)
@example

Turns a logger with LoggingExtensions into a logger with colorized output.
#
def colorize!
  self.extend(Colorize)
end

def format(message, level)

Parameters:
  • level (String, Symbol) --
  • message (String) --
def format(message, level)
  message
end

def push(message = nil, level = nil)

Parameters:
  • level (String) --
  • message (String) --
def push(message = nil, level = nil)
  add(Padrino::Logger::Levels[level], format(message, level))
end

def stylized_level(level)

Parameters:
  • level (String, Symbol) --
def stylized_level(level)
  level.to_s.upcase.rjust(7)
end