Class: AWSCDK::KinesisFirehose::CommonDestinationS3Props
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::KinesisFirehose::CommonDestinationS3Props
- Defined in:
- kinesis_firehose/common_destination_s3_props.rb
Overview
Common properties for defining a backup, intermediary, or final S3 destination for a Amazon Data Firehose delivery stream.
Direct Known Subclasses
Instance Attribute Summary collapse
-
#buffering_interval ⇒ AWSCDK::Duration?
readonly
The length of time that Firehose buffers incoming data before delivering it to the S3 bucket.
-
#buffering_size ⇒ AWSCDK::Size?
readonly
The size of the buffer that Amazon Data Firehose uses for incoming data before delivering it to the S3 bucket.
-
#compression ⇒ AWSCDK::KinesisFirehose::Compression?
readonly
The type of compression that Amazon Data Firehose uses to compress the data that it delivers to the Amazon S3 bucket.
-
#data_output_prefix ⇒ String?
readonly
A prefix that Amazon Data Firehose evaluates and adds to records before writing them to S3.
-
#encryption_key ⇒ AWSCDK::KMS::IKey?
readonly
The AWS KMS key used to encrypt the data that it delivers to your Amazon S3 bucket.
-
#error_output_prefix ⇒ String?
readonly
A prefix that Amazon Data Firehose evaluates and adds to failed records before writing them to S3.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(buffering_interval: nil, buffering_size: nil, compression: nil, data_output_prefix: nil, encryption_key: nil, error_output_prefix: nil) ⇒ CommonDestinationS3Props
constructor
A new instance of CommonDestinationS3Props.
- #to_jsii ⇒ Object
Constructor Details
#initialize(buffering_interval: nil, buffering_size: nil, compression: nil, data_output_prefix: nil, encryption_key: nil, error_output_prefix: nil) ⇒ CommonDestinationS3Props
Returns a new instance of CommonDestinationS3Props.
13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'kinesis_firehose/common_destination_s3_props.rb', line 13 def initialize(buffering_interval: nil, buffering_size: nil, compression: nil, data_output_prefix: nil, encryption_key: nil, error_output_prefix: nil) @buffering_interval = buffering_interval Jsii::Type.check_type(@buffering_interval, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "bufferingInterval") unless @buffering_interval.nil? @buffering_size = buffering_size Jsii::Type.check_type(@buffering_size, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5TaXplIn0=")), "bufferingSize") unless @buffering_size.nil? @compression = compression Jsii::Type.check_type(@compression, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfa2luZXNpc2ZpcmVob3NlLkNvbXByZXNzaW9uIn0=")), "compression") unless @compression.nil? @data_output_prefix = data_output_prefix Jsii::Type.check_type(@data_output_prefix, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dataOutputPrefix") unless @data_output_prefix.nil? @encryption_key = encryption_key Jsii::Type.check_type(@encryption_key, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfa21zLklLZXkifQ==")), "encryptionKey") unless @encryption_key.nil? @error_output_prefix = error_output_prefix Jsii::Type.check_type(@error_output_prefix, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "errorOutputPrefix") unless @error_output_prefix.nil? end |
Instance Attribute Details
#buffering_interval ⇒ AWSCDK::Duration? (readonly)
Default: Duration.seconds(300)
The length of time that Firehose buffers incoming data before delivering it to the S3 bucket.
Minimum: Duration.seconds(0) when dynamic partitioning is disabled, Duration.seconds(60) when it is enabled Maximum: Duration.seconds(900)
35 36 37 |
# File 'kinesis_firehose/common_destination_s3_props.rb', line 35 def buffering_interval @buffering_interval end |
#buffering_size ⇒ AWSCDK::Size? (readonly)
Default: Size.mebibytes(5) when record data format conversion or dynamic partitioning is disabled, Size.mebibytes(128) when it is enabled
The size of the buffer that Amazon Data Firehose uses for incoming data before delivering it to the S3 bucket.
Minimum: Size.mebibytes(1) when record data format conversion or dynamic partitioning is disabled, Size.mebibytes(64) when it is enabled Maximum: Size.mebibytes(128)
43 44 45 |
# File 'kinesis_firehose/common_destination_s3_props.rb', line 43 def buffering_size @buffering_size end |
#compression ⇒ AWSCDK::KinesisFirehose::Compression? (readonly)
Default: - UNCOMPRESSED
The type of compression that Amazon Data Firehose uses to compress the data that it delivers to the Amazon S3 bucket.
The compression formats SNAPPY or ZIP cannot be specified for Amazon Redshift destinations because they are not supported by the Amazon Redshift COPY operation that reads from the S3 bucket.
52 53 54 |
# File 'kinesis_firehose/common_destination_s3_props.rb', line 52 def compression @compression end |
#data_output_prefix ⇒ String? (readonly)
Default: - "YYYY/MM/DD/HH/"
A prefix that Amazon Data Firehose evaluates and adds to records before writing them to S3.
This prefix appears immediately following the bucket name.
60 61 62 |
# File 'kinesis_firehose/common_destination_s3_props.rb', line 60 def data_output_prefix @data_output_prefix end |
#encryption_key ⇒ AWSCDK::KMS::IKey? (readonly)
Default: - Data is not encrypted.
The AWS KMS key used to encrypt the data that it delivers to your Amazon S3 bucket.
65 66 67 |
# File 'kinesis_firehose/common_destination_s3_props.rb', line 65 def encryption_key @encryption_key end |
#error_output_prefix ⇒ String? (readonly)
Default: - See the documentation above
A prefix that Amazon Data Firehose evaluates and adds to failed records before writing them to S3.
This prefix appears immediately following the bucket name.
73 74 75 |
# File 'kinesis_firehose/common_destination_s3_props.rb', line 73 def error_output_prefix @error_output_prefix end |
Class Method Details
.jsii_properties ⇒ Object
75 76 77 78 79 80 81 82 83 84 |
# File 'kinesis_firehose/common_destination_s3_props.rb', line 75 def self.jsii_properties { :buffering_interval => "bufferingInterval", :buffering_size => "bufferingSize", :compression => "compression", :data_output_prefix => "dataOutputPrefix", :encryption_key => "encryptionKey", :error_output_prefix => "errorOutputPrefix", } end |
Instance Method Details
#to_jsii ⇒ Object
86 87 88 89 90 91 92 93 94 95 96 97 |
# File 'kinesis_firehose/common_destination_s3_props.rb', line 86 def to_jsii result = {} result.merge!({ "bufferingInterval" => @buffering_interval, "bufferingSize" => @buffering_size, "compression" => @compression, "dataOutputPrefix" => @data_output_prefix, "encryptionKey" => @encryption_key, "errorOutputPrefix" => @error_output_prefix, }) result.compact end |