class Gom::Logger
Constants
- Levels
Gom::Log.level = Gom::Attribute.value(“/gom/log:level”, ::Logger::INFO)
Public Class Methods
new(out = nil)
click to toggle source
Calls superclass method
# File lib/gom/logger.rb, line 32 def initialize out = nil super(out || default_outstream) self.level = ::Logger::DEBUG end
Public Instance Methods
default_outstream()
click to toggle source
output defaults to STDOUT for rails test and non-rails apps, to a logfile otherwise
# File lib/gom/logger.rb, line 20 def default_outstream if ! (Object.const_defined? 'Rails') STDOUT else if 'test' === ::Rails.env STDOUT else "#{::Rails.root.to_s}/log/gom-#{::Rails.env}.log" end end end
ex(e, msg = nil, level = :error)
click to toggle source
experimental convenience function:
Log.ex e
does actually do:
Log.error e Log.debug "#{e.backtrace.join "\n\t"}"
and:
Log.ex e, "some message here"
stands for:
Log.error "some message here" Log.debug "#{e.backtrace.join "\n\t"}"
# File lib/gom/logger.rb, line 57 def ex e, msg = nil, level = :error send level, "#{e}: #{(msg || e)}" debug "#{e} -- callstack: #{msg}\n\t#{e.backtrace.join "\n\t"}" end
format_message(severity, timestamp, progname, msg)
click to toggle source
this is to de-patch the rails formatting patch..
# File lib/gom/logger.rb, line 38 def format_message(severity, timestamp, progname, msg) "#{timestamp.strftime '%Y-%m-%d %H:%M:%S'} #{severity.chars.first} #{msg}\n" end