Sha256: cd1ccda73ecea5c3824092f5b017752a7b33e459965fd66dc99e109147b9e1cf
Contents?: true
Size: 1015 Bytes
Versions: 2
Compression:
Stored size: 1015 Bytes
Contents
require 'logger' module LogjamAgent class SyslogLikeFormatter def initialize @hostname = LogjamAgent.hostname @app_name = "rails" @attributes = [] end attr_accessor :attributes SEV_LABEL = Logger::SEV_LABEL.map{|sev| "%-5s" % sev} def format_severity(severity) SEV_LABEL[severity] || 'ALIEN' end def format_time(timestamp) timestamp.strftime("%b %d %H:%M:%S.#{"%06d" % timestamp.usec}") end def format_message(msg) msg.strip end def call(severity, timestamp, progname, msg) "#{format_severity(severity)} #{format_time(timestamp)} #{@hostname} #{progname||@app_name}[#{$$}]#{render_attributes}: #{format_message(msg)}" end def render_attributes @attributes.map{|key, value| " #{key}[#{value}]"}.join end def set_attribute(name, value) if attribute = @attributes.detect{|n,v| n == name} attribute[1] = value else @attributes << [name, value] end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
logjam_agent-0.3.2 | lib/logjam_agent/syslog_like_formatter.rb |
logjam_agent-0.3.1 | lib/logjam_agent/syslog_like_formatter.rb |