Sha256: de93d56889937af64edbdbe4283bcbf02de8cc4a0d590446613129186048257d

Contents?: true

Size: 1.38 KB

Versions: 2

Compression:

Stored size: 1.38 KB

Contents

#
#  Copyright 2014-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.
#
#  Licensed under the Amazon Software License (the "License").
#  You may not use this file except in compliance with the License.
#  A copy of the License is located at
#
#  http://aws.amazon.com/asl/
#
#  or in the "license" file accompanying this file. This file is distributed
#  on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
#  express or implied. See the License for the specific language governing
#  permissions and limitations under the License.

module Fluent
  module KinesisHelper
    class BaseError < ::StandardError; end
    class SkipRecordError < BaseError; end

    class KeyNotFoundError < SkipRecordError
      def initialize(key, record)
        super "Key '#{key}' doesn't exist on #{record}"
      end
    end

    class ExceedMaxRecordSizeError < SkipRecordError
      def initialize(record, reduce_message)
        if reduce_message == true
          sampled_record = "#{record.slice(0,1024)}...#{record.slice(-1024,1024)}"
          super "Record size limit exceeded for #{record.length}-bytes record: #{sampled_record}"
        else
          super "Record size limit exceeded for #{record}"
        end
      end
    end

    class InvalidRecordError < SkipRecordError
      def initialize(record)
        super "Invalid type of record: #{record}"
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
fluent-plugin-kinesis-1.3.0 lib/fluent/plugin/kinesis_helper/error.rb
fluent-plugin-kinesis-1.2.0 lib/fluent/plugin/kinesis_helper/error.rb