class FlogRuby::Syslogger::Formatter

Constants

SEV_LABEL

Severity label for logging (max 5 chars).

Public Instance Methods

call(severity, time, progname, msg) click to toggle source
# File lib/flog_ruby/logger_factory.rb, line 145
def call(severity, time, progname, msg)
  format = "%s, [%s] %s: %s\n".freeze
  sev_str = format_severity(severity)
  format % [sev_str[0..0], format_datetime(time), progname, clean(msg)]
end

Private Instance Methods

clean(message) click to toggle source

Clean up messages so they’re nice and pretty.

# File lib/flog_ruby/logger_factory.rb, line 154
def clean(message)
  message = message.to_s.strip
  message.gsub!(/\e\[[0-9;]*m/, '') # remove useless ansi color codes
  message
end
format_datetime(time) click to toggle source
# File lib/flog_ruby/logger_factory.rb, line 167
def format_datetime(time)
  #(time || Time.zone.now).to_s(:iso8601)
  #Time.zone.now.iso8601(3) #=> "2016-12-06T13:04:01.703+08:00"
  (time || Time.zone.now).iso8601(3) # 需要毫秒
end
format_severity(severity) click to toggle source
# File lib/flog_ruby/logger_factory.rb, line 163
def format_severity(severity)
  SEV_LABEL[severity] || 'ANY'
end