Sha256: e2dac489631c584b28d1898574a60dba18fc6e47480a8051cc702c9dd247901c

Contents?: true

Size: 719 Bytes

Versions: 49

Compression:

Stored size: 719 Bytes

Contents

require 'rollbar/util'
require 'rollbar/truncation/mixin'
require 'rollbar/truncation/raw_strategy'
require 'rollbar/truncation/frames_strategy'
require 'rollbar/truncation/strings_strategy'
require 'rollbar/truncation/min_body_strategy'

module Rollbar
  module Truncation
    extend ::Rollbar::Truncation::Mixin

    MAX_PAYLOAD_SIZE = 128 * 1024 # 128kb
    STRATEGIES = [RawStrategy,
                  FramesStrategy,
                  StringsStrategy,
                  MinBodyStrategy
                 ]

    def self.truncate(payload)
      result = nil

      STRATEGIES.each do |strategy|
        result = strategy.call(payload)
        break unless truncate?(result)
      end

      result
    end
  end
end

Version data entries

49 entries across 49 versions & 1 rubygems

Version Path
rollbar-2.12.0 lib/rollbar/truncation.rb
rollbar-2.11.5 lib/rollbar/truncation.rb
rollbar-2.11.4 lib/rollbar/truncation.rb
rollbar-2.11.3 lib/rollbar/truncation.rb
rollbar-2.11.2 lib/rollbar/truncation.rb
rollbar-2.11.1 lib/rollbar/truncation.rb
rollbar-2.11.0 lib/rollbar/truncation.rb
rollbar-2.10.0 lib/rollbar/truncation.rb
rollbar-2.9.1 lib/rollbar/truncation.rb
rollbar-2.9.0 lib/rollbar/truncation.rb
rollbar-2.8.3 lib/rollbar/truncation.rb
rollbar-2.8.2 lib/rollbar/truncation.rb
rollbar-2.8.1 lib/rollbar/truncation.rb
rollbar-2.8.0 lib/rollbar/truncation.rb
rollbar-2.7.1 lib/rollbar/truncation.rb
rollbar-2.7.0 lib/rollbar/truncation.rb
rollbar-2.6.3 lib/rollbar/truncation.rb
rollbar-2.6.2 lib/rollbar/truncation.rb
rollbar-2.6.1 lib/rollbar/truncation.rb
rollbar-2.6.0 lib/rollbar/truncation.rb