You are viewing documentation for version 3 of the AWS SDK for Ruby. Version 2 documentation can be found here.

Class: Aws::Firehose::Types::CreateDeliveryStreamInput

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb

Overview

Note:

When making an API call, you may pass CreateDeliveryStreamInput data as a hash:

{
  delivery_stream_name: "DeliveryStreamName", # required
  delivery_stream_type: "DirectPut", # accepts DirectPut, KinesisStreamAsSource
  kinesis_stream_source_configuration: {
    kinesis_stream_arn: "KinesisStreamARN", # required
    role_arn: "RoleARN", # required
  },
  s3_destination_configuration: {
    role_arn: "RoleARN", # required
    bucket_arn: "BucketARN", # required
    prefix: "Prefix",
    buffering_hints: {
      size_in_m_bs: 1,
      interval_in_seconds: 1,
    },
    compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
    encryption_configuration: {
      no_encryption_config: "NoEncryption", # accepts NoEncryption
      kms_encryption_config: {
        awskms_key_arn: "AWSKMSKeyARN", # required
      },
    },
    cloud_watch_logging_options: {
      enabled: false,
      log_group_name: "LogGroupName",
      log_stream_name: "LogStreamName",
    },
  },
  extended_s3_destination_configuration: {
    role_arn: "RoleARN", # required
    bucket_arn: "BucketARN", # required
    prefix: "Prefix",
    buffering_hints: {
      size_in_m_bs: 1,
      interval_in_seconds: 1,
    },
    compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
    encryption_configuration: {
      no_encryption_config: "NoEncryption", # accepts NoEncryption
      kms_encryption_config: {
        awskms_key_arn: "AWSKMSKeyARN", # required
      },
    },
    cloud_watch_logging_options: {
      enabled: false,
      log_group_name: "LogGroupName",
      log_stream_name: "LogStreamName",
    },
    processing_configuration: {
      enabled: false,
      processors: [
        {
          type: "Lambda", # required, accepts Lambda
          parameters: [
            {
              parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
              parameter_value: "ProcessorParameterValue", # required
            },
          ],
        },
      ],
    },
    s3_backup_mode: "Disabled", # accepts Disabled, Enabled
    s3_backup_configuration: {
      role_arn: "RoleARN", # required
      bucket_arn: "BucketARN", # required
      prefix: "Prefix",
      buffering_hints: {
        size_in_m_bs: 1,
        interval_in_seconds: 1,
      },
      compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
      encryption_configuration: {
        no_encryption_config: "NoEncryption", # accepts NoEncryption
        kms_encryption_config: {
          awskms_key_arn: "AWSKMSKeyARN", # required
        },
      },
      cloud_watch_logging_options: {
        enabled: false,
        log_group_name: "LogGroupName",
        log_stream_name: "LogStreamName",
      },
    },
  },
  redshift_destination_configuration: {
    role_arn: "RoleARN", # required
    cluster_jdbc_url: "ClusterJDBCURL", # required
    copy_command: { # required
      data_table_name: "DataTableName", # required
      data_table_columns: "DataTableColumns",
      copy_options: "CopyOptions",
    },
    username: "Username", # required
    password: "Password", # required
    retry_options: {
      duration_in_seconds: 1,
    },
    s3_configuration: { # required
      role_arn: "RoleARN", # required
      bucket_arn: "BucketARN", # required
      prefix: "Prefix",
      buffering_hints: {
        size_in_m_bs: 1,
        interval_in_seconds: 1,
      },
      compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
      encryption_configuration: {
        no_encryption_config: "NoEncryption", # accepts NoEncryption
        kms_encryption_config: {
          awskms_key_arn: "AWSKMSKeyARN", # required
        },
      },
      cloud_watch_logging_options: {
        enabled: false,
        log_group_name: "LogGroupName",
        log_stream_name: "LogStreamName",
      },
    },
    processing_configuration: {
      enabled: false,
      processors: [
        {
          type: "Lambda", # required, accepts Lambda
          parameters: [
            {
              parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
              parameter_value: "ProcessorParameterValue", # required
            },
          ],
        },
      ],
    },
    s3_backup_mode: "Disabled", # accepts Disabled, Enabled
    s3_backup_configuration: {
      role_arn: "RoleARN", # required
      bucket_arn: "BucketARN", # required
      prefix: "Prefix",
      buffering_hints: {
        size_in_m_bs: 1,
        interval_in_seconds: 1,
      },
      compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
      encryption_configuration: {
        no_encryption_config: "NoEncryption", # accepts NoEncryption
        kms_encryption_config: {
          awskms_key_arn: "AWSKMSKeyARN", # required
        },
      },
      cloud_watch_logging_options: {
        enabled: false,
        log_group_name: "LogGroupName",
        log_stream_name: "LogStreamName",
      },
    },
    cloud_watch_logging_options: {
      enabled: false,
      log_group_name: "LogGroupName",
      log_stream_name: "LogStreamName",
    },
  },
  elasticsearch_destination_configuration: {
    role_arn: "RoleARN", # required
    domain_arn: "ElasticsearchDomainARN", # required
    index_name: "ElasticsearchIndexName", # required
    type_name: "ElasticsearchTypeName", # required
    index_rotation_period: "NoRotation", # accepts NoRotation, OneHour, OneDay, OneWeek, OneMonth
    buffering_hints: {
      interval_in_seconds: 1,
      size_in_m_bs: 1,
    },
    retry_options: {
      duration_in_seconds: 1,
    },
    s3_backup_mode: "FailedDocumentsOnly", # accepts FailedDocumentsOnly, AllDocuments
    s3_configuration: { # required
      role_arn: "RoleARN", # required
      bucket_arn: "BucketARN", # required
      prefix: "Prefix",
      buffering_hints: {
        size_in_m_bs: 1,
        interval_in_seconds: 1,
      },
      compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
      encryption_configuration: {
        no_encryption_config: "NoEncryption", # accepts NoEncryption
        kms_encryption_config: {
          awskms_key_arn: "AWSKMSKeyARN", # required
        },
      },
      cloud_watch_logging_options: {
        enabled: false,
        log_group_name: "LogGroupName",
        log_stream_name: "LogStreamName",
      },
    },
    processing_configuration: {
      enabled: false,
      processors: [
        {
          type: "Lambda", # required, accepts Lambda
          parameters: [
            {
              parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
              parameter_value: "ProcessorParameterValue", # required
            },
          ],
        },
      ],
    },
    cloud_watch_logging_options: {
      enabled: false,
      log_group_name: "LogGroupName",
      log_stream_name: "LogStreamName",
    },
  },
}

Instance Attribute Summary collapse

Instance Attribute Details

#delivery_stream_nameString

The name of the delivery stream. This name must be unique per AWS account in the same region. If the delivery streams are in different accounts or different regions, you can have multiple delivery streams with the same name.

Returns:

  • (String)


406
407
408
409
410
411
412
413
414
415
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 406

class CreateDeliveryStreamInput < Struct.new(
  :delivery_stream_name,
  :delivery_stream_type,
  :kinesis_stream_source_configuration,
  :s3_destination_configuration,
  :extended_s3_destination_configuration,
  :redshift_destination_configuration,
  :elasticsearch_destination_configuration)
  include Aws::Structure
end

#delivery_stream_typeString

The delivery stream type. This parameter can be one of the following values:

  • DirectPut: Provider applications access the delivery stream directly.

  • KinesisStreamAsSource: The delivery stream uses a Kinesis stream as a source.

Returns:

  • (String)


406
407
408
409
410
411
412
413
414
415
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 406

class CreateDeliveryStreamInput < Struct.new(
  :delivery_stream_name,
  :delivery_stream_type,
  :kinesis_stream_source_configuration,
  :s3_destination_configuration,
  :extended_s3_destination_configuration,
  :redshift_destination_configuration,
  :elasticsearch_destination_configuration)
  include Aws::Structure
end

#elasticsearch_destination_configurationTypes::ElasticsearchDestinationConfiguration

The destination in Amazon ES. You can specify only one destination.



406
407
408
409
410
411
412
413
414
415
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 406

class CreateDeliveryStreamInput < Struct.new(
  :delivery_stream_name,
  :delivery_stream_type,
  :kinesis_stream_source_configuration,
  :s3_destination_configuration,
  :extended_s3_destination_configuration,
  :redshift_destination_configuration,
  :elasticsearch_destination_configuration)
  include Aws::Structure
end

#extended_s3_destination_configurationTypes::ExtendedS3DestinationConfiguration

The destination in Amazon S3. You can specify only one destination.



406
407
408
409
410
411
412
413
414
415
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 406

class CreateDeliveryStreamInput < Struct.new(
  :delivery_stream_name,
  :delivery_stream_type,
  :kinesis_stream_source_configuration,
  :s3_destination_configuration,
  :extended_s3_destination_configuration,
  :redshift_destination_configuration,
  :elasticsearch_destination_configuration)
  include Aws::Structure
end

#kinesis_stream_source_configurationTypes::KinesisStreamSourceConfiguration

When a Kinesis stream is used as the source for the delivery stream, a KinesisStreamSourceConfiguration containing the Kinesis stream ARN and the role ARN for the source stream.



406
407
408
409
410
411
412
413
414
415
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 406

class CreateDeliveryStreamInput < Struct.new(
  :delivery_stream_name,
  :delivery_stream_type,
  :kinesis_stream_source_configuration,
  :s3_destination_configuration,
  :extended_s3_destination_configuration,
  :redshift_destination_configuration,
  :elasticsearch_destination_configuration)
  include Aws::Structure
end

#redshift_destination_configurationTypes::RedshiftDestinationConfiguration

The destination in Amazon Redshift. You can specify only one destination.



406
407
408
409
410
411
412
413
414
415
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 406

class CreateDeliveryStreamInput < Struct.new(
  :delivery_stream_name,
  :delivery_stream_type,
  :kinesis_stream_source_configuration,
  :s3_destination_configuration,
  :extended_s3_destination_configuration,
  :redshift_destination_configuration,
  :elasticsearch_destination_configuration)
  include Aws::Structure
end

#s3_destination_configurationTypes::S3DestinationConfiguration

[Deprecated] The destination in Amazon S3. You can specify only one destination.



406
407
408
409
410
411
412
413
414
415
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 406

class CreateDeliveryStreamInput < Struct.new(
  :delivery_stream_name,
  :delivery_stream_type,
  :kinesis_stream_source_configuration,
  :s3_destination_configuration,
  :extended_s3_destination_configuration,
  :redshift_destination_configuration,
  :elasticsearch_destination_configuration)
  include Aws::Structure
end