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

Version Path
rest-ftp-daemon-0.302.3 lib/shared/logger_formatter.rb
pushyd-0.9.2 lib/shared/logger_formatter.rb
pushyd-0.9.1 lib/shared/logger_formatter.rb
pushyd-0.9.0 lib/shared/logger_formatter.rb
pushyd-0.8.2 lib/shared/logger_formatter.rb
pushyd-0.8.1 lib/shared/logger_formatter.rb
pushyd-0.8.0 lib/shared/logger_formatter.rb
rest-ftp-daemon-0.302.2 lib/shared/logger_formatter.rb
rest-ftp-daemon-0.302.1 lib/shared/logger_formatter.rb
pushyd-0.7.1 lib/shared/logger_formatter.rb
pushyd-0.7.0 lib/shared/logger_formatter.rb
rest-ftp-daemon-0.302.0 lib/shared/logger_formatter.rb
pushyd-0.6.0 lib/shared/logger_formatter.rb
rest-ftp-daemon-0.300.3 lib/shared/logger_formatter.rb
rest-ftp-daemon-0.300.2 lib/shared/logger_formatter.rb
rest-ftp-daemon-0.300.1 lib/shared/logger_formatter.rb