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

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

Inherits:
Struct
  • Object
show all
Defined in:
(unknown)

Overview

Note:

When passing ElasticsearchDestinationConfiguration as input to an Aws::Client method, you can use a vanilla 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.

Returned by:

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.

Returns:

#cloud_watch_logging_optionsTypes::CloudWatchLoggingOptions

The Amazon CloudWatch logging options for your delivery stream.

Returns:

#cluster_endpointString

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

Returns:

  • (String)

    The endpoint to use when communicating with the cluster.

#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)

    The ARN of the Amazon ES domain.

#index_nameString

The Elasticsearch index name.

Returns:

  • (String)

    The Elasticsearch index name.

#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)

    The Elasticsearch index rotation period.

#processing_configurationTypes::ProcessingConfiguration

The data processing configuration.

Returns:

#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).

Returns:

#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)

    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.

#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.

You can\'t change this backup mode after you create the delivery stream.

Returns:

  • (String)

    Defines how documents should be delivered to Amazon S3.

#s3_configurationTypes::S3DestinationConfiguration

The configuration for the backup Amazon S3 location.

Returns:

#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)

    The Elasticsearch type name.

#vpc_configurationTypes::VpcConfiguration

The details of the VPC of the Amazon ES destination.

Returns: