Class: Aws::Firehose::Types::ElasticsearchDestinationUpdate

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

Overview

Note:

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

{
  role_arn: "RoleARN",
  domain_arn: "ElasticsearchDomainARN",
  cluster_endpoint: "ElasticsearchClusterEndpoint",
  index_name: "ElasticsearchIndexName",
  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_update: {
    role_arn: "RoleARN",
    bucket_arn: "BucketARN",
    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: "RecordDeAggregation", # required, accepts RecordDeAggregation, Lambda, MetadataExtraction, AppendDelimiterToRecord
        parameters: [
          {
            parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries, MetadataExtractionQuery, JsonParsingEngine, RoleArn, BufferSizeInMBs, BufferIntervalInSeconds, SubRecordType, Delimiter
            parameter_value: "ProcessorParameterValue", # required
          },
        ],
      },
    ],
  },
  cloud_watch_logging_options: {
    enabled: false,
    log_group_name: "LogGroupName",
    log_stream_name: "LogStreamName",
  },
}

Describes an update for a destination in Amazon ES.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#buffering_hintsTypes::ElasticsearchBufferingHints

The buffering options. If no value is specified, `ElasticsearchBufferingHints` object default values are used.


2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
# File 'lib/aws-sdk-firehose/types.rb', line 2094

class ElasticsearchDestinationUpdate < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_update,
  :processing_configuration,
  :cloud_watch_logging_options)
  SENSITIVE = []
  include Aws::Structure
end

#cloud_watch_logging_optionsTypes::CloudWatchLoggingOptions

The CloudWatch logging options for your delivery stream.


2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
# File 'lib/aws-sdk-firehose/types.rb', line 2094

class ElasticsearchDestinationUpdate < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_update,
  :processing_configuration,
  :cloud_watch_logging_options)
  SENSITIVE = []
  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)

2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
# File 'lib/aws-sdk-firehose/types.rb', line 2094

class ElasticsearchDestinationUpdate < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_update,
  :processing_configuration,
  :cloud_watch_logging_options)
  SENSITIVE = []
  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 IAM role specified in `RoleARN`. For more information, see [Amazon Resource Names (ARNs) and AWS Service Namespaces].

Specify either `ClusterEndpoint` or `DomainARN`.

[1]: docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html

Returns:

  • (String)

2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
# File 'lib/aws-sdk-firehose/types.rb', line 2094

class ElasticsearchDestinationUpdate < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_update,
  :processing_configuration,
  :cloud_watch_logging_options)
  SENSITIVE = []
  include Aws::Structure
end

#index_nameString

The Elasticsearch index name.

Returns:

  • (String)

2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
# File 'lib/aws-sdk-firehose/types.rb', line 2094

class ElasticsearchDestinationUpdate < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_update,
  :processing_configuration,
  :cloud_watch_logging_options)
  SENSITIVE = []
  include Aws::Structure
end

#index_rotation_periodString

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

[1]: docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-index-rotation

Returns:

  • (String)

2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
# File 'lib/aws-sdk-firehose/types.rb', line 2094

class ElasticsearchDestinationUpdate < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_update,
  :processing_configuration,
  :cloud_watch_logging_options)
  SENSITIVE = []
  include Aws::Structure
end

#processing_configurationTypes::ProcessingConfiguration

The data processing configuration.


2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
# File 'lib/aws-sdk-firehose/types.rb', line 2094

class ElasticsearchDestinationUpdate < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_update,
  :processing_configuration,
  :cloud_watch_logging_options)
  SENSITIVE = []
  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).


2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
# File 'lib/aws-sdk-firehose/types.rb', line 2094

class ElasticsearchDestinationUpdate < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_update,
  :processing_configuration,
  :cloud_watch_logging_options)
  SENSITIVE = []
  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].

[1]: docs.aws.amazon.com/firehose/latest/dev/controlling-access.html#using-iam-s3 [2]: docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html

Returns:

  • (String)

2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
# File 'lib/aws-sdk-firehose/types.rb', line 2094

class ElasticsearchDestinationUpdate < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_update,
  :processing_configuration,
  :cloud_watch_logging_options)
  SENSITIVE = []
  include Aws::Structure
end

#s3_updateTypes::S3DestinationUpdate

The Amazon S3 destination.


2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
# File 'lib/aws-sdk-firehose/types.rb', line 2094

class ElasticsearchDestinationUpdate < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_update,
  :processing_configuration,
  :cloud_watch_logging_options)
  SENSITIVE = []
  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 runtime.

If you upgrade Elasticsearch from 6.x to 7.x and don’t update your delivery stream, Kinesis Data Firehose still delivers data to Elasticsearch with the old index name and type name. If you want to update your delivery stream with a new index name, provide an empty string for `TypeName`.

Returns:

  • (String)

2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
# File 'lib/aws-sdk-firehose/types.rb', line 2094

class ElasticsearchDestinationUpdate < Struct.new(
  :role_arn,
  :domain_arn,
  :cluster_endpoint,
  :index_name,
  :type_name,
  :index_rotation_period,
  :buffering_hints,
  :retry_options,
  :s3_update,
  :processing_configuration,
  :cloud_watch_logging_options)
  SENSITIVE = []
  include Aws::Structure
end