class AioliLogFormatter::Formatter
Public Instance Methods
call(severity, timestamp, progname, message)
click to toggle source
Rails 3
# File lib/aioli_log_formatter/formatter.rb, line 13 def call(severity, timestamp, progname, message) format(message) end
format(message)
click to toggle source
Rails 2
# File lib/aioli_log_formatter/formatter.rb, line 8 def format(message) "#{timestamp} #{hostname} rails[#{process_id}] #{shorten_session_id} #{user_id}: #{sanitize(message)}\n" end
Private Instance Methods
hostname()
click to toggle source
# File lib/aioli_log_formatter/formatter.rb, line 23 def hostname @parsed_hostname ||= Socket.gethostname.split('.').first end
process_id()
click to toggle source
# File lib/aioli_log_formatter/formatter.rb, line 27 def process_id $$ end
sanitize(message)
click to toggle source
# File lib/aioli_log_formatter/formatter.rb, line 45 def sanitize(message) message.to_s.gsub(/\n/, ' ').lstrip end
session_id()
click to toggle source
before_filter { |controller| ($session_id ||= {})[Thread.current] = controller.session_id || 0 }
# File lib/aioli_log_formatter/formatter.rb, line 36 def session_id defined?($session_id) ? "#{$session_id[Thread.current] || 0}" : '0' end
shorten_session_id()
click to toggle source
# File lib/aioli_log_formatter/formatter.rb, line 31 def shorten_session_id session_id[0,10] end
timestamp()
click to toggle source
# File lib/aioli_log_formatter/formatter.rb, line 19 def timestamp Time.now.strftime("%b %d %H:%M:%S") end
user_id()
click to toggle source
before_filter { |controller| ($user_id ||= {})[Thread.current] = controller.session || 0 }
# File lib/aioli_log_formatter/formatter.rb, line 41 def user_id defined?($user_id) ? "u#{$user_id[Thread.current] || 0}" : 'u0' end