Class: Aws::Firehose::Types::ElasticsearchDestinationConfiguration

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 ElasticsearchDestinationConfiguration data as a hash:

{
  role_arn: "RoleARN", # required
  domain_arn: "ElasticsearchDomainARN",
  cluster_endpoint: "ElasticsearchClusterEndpoint",
  index_name: "ElasticsearchIndexName", # required
  type_name: "ElasticsearchTypeName",
  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",
    error_output_prefix: "ErrorOutputPrefix",
    buffering_hints: {
      size_in_m_bs: 1,
      interval_in_seconds: 1,
    },
    compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy, HADOOP_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, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds
            parameter_value: "ProcessorParameterValue", # required
          },
        ],
      },
    ],
  },
  cloud_watch_logging_options: {
    enabled: false,
    log_group_name: "LogGroupName",
    log_stream_name: "LogStreamName",
  },
  vpc_configuration: {
    subnet_ids: ["NonEmptyStringWithoutWhitespace"], # required
    role_arn: "RoleARN", # required
    security_group_ids: ["NonEmptyStringWithoutWhitespace"], # required
  },
}

Describes the configuration of a destination in Amazon ES.

Instance Attribute Summary collapse

Instance Attribute Details

#buffering_hintsTypes::ElasticsearchBufferingHints

The buffering options. If no value is specified, the default values for ElasticsearchBufferingHints are used.



1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 1274

class ElasticsearchDestinationConfiguration < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_backup_mode,
  :s3_configuration,
  :processing_configuration,
  :cloud_watch_logging_options,
  :vpc_configuration)
  include Aws::Structure
end

#cloud_watch_logging_optionsTypes::CloudWatchLoggingOptions

The Amazon CloudWatch logging options for your delivery stream.



1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 1274

class ElasticsearchDestinationConfiguration < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_backup_mode,
  :s3_configuration,
  :processing_configuration,
  :cloud_watch_logging_options,
  :vpc_configuration)
  include Aws::Structure
end

#cluster_endpointString

The endpoint to use when communicating with the cluster. Specify either this ClusterEndpoint or the DomainARN field.

Returns:

  • (String)


1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 1274

class ElasticsearchDestinationConfiguration < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_backup_mode,
  :s3_configuration,
  :processing_configuration,
  :cloud_watch_logging_options,
  :vpc_configuration)
  include Aws::Structure
end

#domain_arnString

The ARN of the Amazon ES domain. The IAM role must have permissions for DescribeElasticsearchDomain, DescribeElasticsearchDomains, and DescribeElasticsearchDomainConfig after assuming the role specified in RoleARN. For more information, see Amazon Resource Names (ARNs) and AWS Service Namespaces.

Specify either ClusterEndpoint or DomainARN.

Returns:

  • (String)


1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 1274

class ElasticsearchDestinationConfiguration < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_backup_mode,
  :s3_configuration,
  :processing_configuration,
  :cloud_watch_logging_options,
  :vpc_configuration)
  include Aws::Structure
end

#index_nameString

The Elasticsearch index name.

Returns:

  • (String)


1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 1274

class ElasticsearchDestinationConfiguration < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_backup_mode,
  :s3_configuration,
  :processing_configuration,
  :cloud_watch_logging_options,
  :vpc_configuration)
  include Aws::Structure
end

#index_rotation_periodString

The Elasticsearch index rotation period. Index rotation appends a timestamp to the IndexName to facilitate the expiration of old data. For more information, see Index Rotation for the Amazon ES Destination. The default value is OneDay.

Returns:

  • (String)


1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 1274

class ElasticsearchDestinationConfiguration < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_backup_mode,
  :s3_configuration,
  :processing_configuration,
  :cloud_watch_logging_options,
  :vpc_configuration)
  include Aws::Structure
end

#processing_configurationTypes::ProcessingConfiguration

The data processing configuration.



1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 1274

class ElasticsearchDestinationConfiguration < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_backup_mode,
  :s3_configuration,
  :processing_configuration,
  :cloud_watch_logging_options,
  :vpc_configuration)
  include Aws::Structure
end

#retry_optionsTypes::ElasticsearchRetryOptions

The retry behavior in case Kinesis Data Firehose is unable to deliver documents to Amazon ES. The default value is 300 (5 minutes).



1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 1274

class ElasticsearchDestinationConfiguration < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_backup_mode,
  :s3_configuration,
  :processing_configuration,
  :cloud_watch_logging_options,
  :vpc_configuration)
  include Aws::Structure
end

#role_arnString

The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Amazon ES Configuration API and for indexing documents. For more information, see Grant Kinesis Data Firehose Access to an Amazon S3 Destination and Amazon Resource Names (ARNs) and AWS Service Namespaces.

Returns:

  • (String)


1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 1274

class ElasticsearchDestinationConfiguration < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_backup_mode,
  :s3_configuration,
  :processing_configuration,
  :cloud_watch_logging_options,
  :vpc_configuration)
  include Aws::Structure
end

#s3_backup_modeString

Defines how documents should be delivered to Amazon S3. When it is set to FailedDocumentsOnly, Kinesis Data Firehose writes any documents that could not be indexed to the configured Amazon S3 destination, with elasticsearch-failed/ appended to the key prefix. When set to AllDocuments, Kinesis Data Firehose delivers all incoming records to Amazon S3, and also writes failed documents with elasticsearch-failed/ appended to the prefix. For more information, see Amazon S3 Backup for the Amazon ES Destination. Default value is FailedDocumentsOnly.

Returns:

  • (String)


1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 1274

class ElasticsearchDestinationConfiguration < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_backup_mode,
  :s3_configuration,
  :processing_configuration,
  :cloud_watch_logging_options,
  :vpc_configuration)
  include Aws::Structure
end

#s3_configurationTypes::S3DestinationConfiguration

The configuration for the backup Amazon S3 location.



1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 1274

class ElasticsearchDestinationConfiguration < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_backup_mode,
  :s3_configuration,
  :processing_configuration,
  :cloud_watch_logging_options,
  :vpc_configuration)
  include Aws::Structure
end

#type_nameString

The Elasticsearch type name. For Elasticsearch 6.x, there can be only one type per index. If you try to specify a new type for an existing index that already has another type, Kinesis Data Firehose returns an error during run time.

For Elasticsearch 7.x, don't specify a TypeName.

Returns:

  • (String)


1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 1274

class ElasticsearchDestinationConfiguration < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_backup_mode,
  :s3_configuration,
  :processing_configuration,
  :cloud_watch_logging_options,
  :vpc_configuration)
  include Aws::Structure
end

#vpc_configurationTypes::VpcConfiguration

The details of the VPC of the Amazon ES destination.



1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
# File 'gems/aws-sdk-firehose/lib/aws-sdk-firehose/types.rb', line 1274

class ElasticsearchDestinationConfiguration < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_backup_mode,
  :s3_configuration,
  :processing_configuration,
  :cloud_watch_logging_options,
  :vpc_configuration)
  include Aws::Structure
end