Sha256: 97044ced805f8894e6ee360b9afef63e9618cff3482a162141db343c5a04d16b

Contents?: true

Size: 955 Bytes

Versions: 20

Compression:

Stored size: 955 Bytes

Contents

require 'rollbar/truncation/mixin'
require 'rollbar/util'

module Rollbar
  module Truncation
    class MinBodyStrategy
      include ::Rollbar::Truncation::Mixin

      def self.call(payload)
        new.call(payload)
      end

      def call(payload)
        new_payload = Rollbar::Util.deep_copy(payload)
        body = new_payload['data']['body']

        if body['trace_chain']
          body['trace_chain'] = body['trace_chain'].map do |trace_data|
            truncate_trace_data(trace_data)
          end
        elsif body['trace']
          body['trace'] = truncate_trace_data(body['trace'])
        end

        dump(new_payload)
      end

      def truncate_trace_data(trace_data)
        trace_data['exception'].delete('description')
        trace_data['exception']['message'] = trace_data['exception']['message'][0, 255]
        trace_data['frames'] = select_frames(trace_data['frames'], 1)

        trace_data
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
rollbar-2.20.0 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.19.4 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.19.3 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.19.2 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.19.1 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.19.0 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.18.2 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.18.0 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.17.0 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.16.4 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.16.3 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.16.2 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.16.0 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.15.6 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.15.5 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.15.4 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.15.3 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.15.2 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.15.1 lib/rollbar/truncation/min_body_strategy.rb
rollbar-2.15.0 lib/rollbar/truncation/min_body_strategy.rb