Sha256: 95080bb20bf0affb7ea8b6b33a2eb65d5f1b4ee17c36b3b38248967c71edbad3
Contents?: true
Size: 1.24 KB
Versions: 3
Compression:
Stored size: 1.24 KB
Contents
require "logger" class Logger def info_with_id message, context = {} # Ensure context is a hash of options and init context = {} unless context.is_a? Hash context[:level] ||= Logger::DEBUG # Build prefixes depending on this context prefix1 = build_prefix(context) prefix2 = build_prefix + " | " lines = context[:lines] if lines.is_a? Hash output = build_from_hash prefix2, lines elsif lines.is_a? Array output = build_from_array prefix2, lines else output = [] end # Prepend plain message to output output.unshift prefix1 + message.force_encoding(Encoding::UTF_8) # Send all this to logger add context[:level], output end def build_prefix context = {} LOG_FORMAT_MESSAGE % [ context[:wid].to_s, context[:jid].to_s, context[:id].to_s, context[:level].to_i + 1, ] end protected def build_from_array prefix, lines lines.map do |value| #text = value.to_s.strip[0..LOG_TRIM_LINE] text = value.to_s[0..LOG_TRIM_LINE] "#{prefix}#{text}" end end def build_from_hash prefix, lines lines.map do |name, value| text = value.to_s.strip[0..LOG_TRIM_LINE] "#{prefix}#{name}: #{text}" end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rest-ftp-daemon-0.250.5 | lib/rest-ftp-daemon/logger.rb |
rest-ftp-daemon-0.250.4 | lib/rest-ftp-daemon/logger.rb |
rest-ftp-daemon-0.250.3 | lib/rest-ftp-daemon/logger.rb |