diff --git a/lib/rackstash/formatter.rb b/lib/rackstash/formatter.rb index 16a06ec..2d58197 100644 --- a/lib/rackstash/formatter.rb +++ b/lib/rackstash/formatter.rb @@ -25,4 +25,10 @@ module Rackstash "#{msg2str(msg)}\n" end end + + class RawFormatter + def call(_severity, _timestamp, _progname, msg) + msg + end + end end diff --git a/lib/rackstash/message.rb b/lib/rackstash/message.rb index a26d877..29ce90f 100644 --- a/lib/rackstash/message.rb +++ b/lib/rackstash/message.rb @@ -6,7 +6,7 @@ module Rackstash # This class and all its data are immutable after initialization class Message - RAW_FORMATTER = ->(_severity, _timestamp, _progname, msg) { msg } + RAW_FORMATTER = RawFormatter.new SEVERITY_LABEL = [ 'DEBUG'.freeze, diff --git a/spec/rackstash/formatter_spec.rb b/spec/rackstash/formatter_spec.rb index 09e7fd6..e9085f5 100644 --- a/spec/rackstash/formatter_spec.rb +++ b/spec/rackstash/formatter_spec.rb @@ -46,3 +46,12 @@ describe Rackstash::Formatter do expect(formatter.call('ERROR', Time.now, 'progname', object)).to eql "#{inspected}\n" end end + +describe Rackstash::RawFormatter do + let(:formatter) { Rackstash::RawFormatter.new } + + it 'returns the message' do + msg = 'my message' + expect(formatter.call('ERROR', Time.now, 'progname', msg)).to equal msg + end +end