Sha256: ff84dbed0d42927d54957ef314fff1c8d8ef7f5fe9537ebb9a03597557148619
Contents?: true
Size: 735 Bytes
Versions: 16
Compression:
Stored size: 735 Bytes
Contents
module Shared class LoggerFormatter def self.call severity, datetime, progname, payload # Build common values timestamp = datetime.strftime(LOG_HEADER_TIME) # Build header header = sprintf LOG_HEADER_FORMAT, timestamp, Process.pid, severity, progname # If we have a bunch of lines, prefix them and send them together return payload.map do |line| "#{header}#{trimmed(line)}\n" end.join if payload.is_a?(Array) # Otherwise, just prefix the only line return "#{header}#{trimmed(payload)}\n" end protected def self.trimmed line line.to_s.rstrip[0..LOG_MESSAGE_TRIM].force_encoding(Encoding::UTF_8) end end end
Version data entries
16 entries across 16 versions & 2 rubygems