Browse Source

before_message

pagy
pvincent 11 months ago
parent
commit
d51b221cd0
  1. 13
      lib/formatters/basic_formatter.rb

13
lib/formatters/basic_formatter.rb

@ -48,7 +48,7 @@ class BasicFormatter < SemanticLogger::Formatters::Color
message.rstrip! message.rstrip!
message += "\n" unless message.starts_with?('Completed 5') message += "\n" unless message.starts_with?('Completed 5')
end end
"#{CONTENT_PREFIX}#{CONTENT_COLOR_MAP[log.level]}#{message}#{color_map.clear}"
"#{CONTENT_COLOR_MAP[log.level]}#{message}#{color_map.clear}"
end end
def level def level
@ -67,22 +67,25 @@ class BasicFormatter < SemanticLogger::Formatters::Color
stack = log.exception.backtrace.select { |line| line.starts_with?(root_path) } stack = log.exception.backtrace.select { |line| line.starts_with?(root_path) }
stack = stack.map { |line| line.delete_prefix("#{root_path}/") } stack = stack.map { |line| line.delete_prefix("#{root_path}/") }
"#{CONTENT_PREFIX}#{ANSI_REVERSED_ERROR}#{log.exception.class}#{color_map.clear}: #{color}#{log.exception.message}#{color_map.clear}#{backtrace(stack)}" # rubocop:disable Layout/LineLength
"#{ANSI_REVERSED_ERROR}#{log.exception.class}#{color_map.clear}: #{color}#{log.exception.message}#{color_map.clear}#{backtrace(stack)}" # rubocop:disable Layout/LineLength
end end
def call(log, logger) def call(log, logger)
self.color = color_map[log.level] self.color = color_map[log.level]
self.log = log self.log = log
self.logger = logger self.logger = logger
[name, level, tags, named_tags, duration, message, payload, exception].compact.join(' ')
[before_message, message, payload, exception].compact.join(' ')
end end
private private
def before_message
[name, level, tags, named_tags, duration, CONTENT_PREFIX].compact.join(' ')
end
def backtrace(stack) def backtrace(stack)
nil unless stack.count.positive? nil unless stack.count.positive?
prefix = [name, level, tags, named_tags, duration, message, payload, CONTENT_PREFIX].compact.join(' ')
"\n#{prefix}#{ANSI_ERROR}#{stack.join("\n#{prefix}#{ANSI_ERROR}")}#{color_map.clear}"
"\n#{before_message} #{ANSI_ERROR}#{stack.join("\n#{before_message} #{ANSI_ERROR}")}#{color_map.clear}"
end end
end end
Loading…
Cancel
Save